📜  Ruby 搜索和替换

📅  最后修改于: 2022-05-13 01:55:51.556000             🧑  作者: Mango

Ruby 搜索和替换

subgsub使用正则表达式的字符串方法,它们的就地变体是sub!gsub! .子和子!替换第一次出现的模式和 gsub & gsub!替换所有出现。所有这些方法都使用正则表达式模式执行搜索和替换操作。子!和gsub!修改调用它们的字符串,而 sub 和 gsub 返回一个新字符串,而原始字符串保持不变。
下面是一个更好地理解它的例子。

例子 :

# Ruby program of sub and gsub method in a string
  
roll = "2004-959-559 # This is Roll Number"
  
# Delete Ruby-style comments
roll = roll.sub!(/#.*$/, "")   
puts "Roll Num : #{roll}"
  
# Remove anything other than digits
roll = roll.gsub!(/\D/, "")    
puts "Roll Num : #{roll}"

输出 :

Roll Num : 2004-959-559 
Roll Num : 2004959559

在上面的例子中,我们使用的是 sub!和gsub!。这里分!替换第一次出现的模式和 gsub!替换所有出现。

例子 :

# Ruby program of sub and gsub method
text = "geeks for geeks, is a computer science portal"
  
# Change "rails" to "Rails" throughout
text.gsub!("geeks", "Geeks")
  
# Capitalize the word "Rails" throughout
text.gsub!(/\bgeeks\b/, "Geeks")
puts "#{text}"

输出 :

Geeks for Geeks, is a computer science portal

gsub!方法也可以与正则表达式一起使用。