【Ruby】【高级编程】正则


#【【正则】】
=begin
sub 和 gsub 及它们的替代变量 sub! 和 gsub! 是使用正则表达式时重要的字符串方法。
所有这些方法都是使用正则表达式模式执行搜索与替换操作。sub 和 sub! 替换模式的第一次出现,gsub 和 gsub! 替换模式的所有出现。
sub 和 gsub 返回一个新的字符串,保持原始的字符串不被修改,而 sub! 和 gsub! 则会修改它们调用的字符串。
=end


#例子
phone = "156-1835-7999 #这是一个电话号码; #这真是一个电话号码; 这次是真的 ##"
phone1 = phone.sub(/#.*$/,"")
puts "电话号码:#{phone}"
puts "电话号码:#{phone1}"
=begin
电话号码:156-1835-7999 #这是一个电话号码; #这真是一个电话号码; 这次是真的 ##
电话号码:156-1835-7999
=end

phone = "156-1835-7999 #这是一个电话号码; #这真是一个电话号码; 这次是真的 ##"
phone1 = phone.sub!(/['a'-'c'].*$/,"")
puts "电话号码:#{phone}"
puts "电话号码:#{phone1}"
=begin
电话号码:156-1835-7999 #这是一个电话号码; #这真是一个电话号码; 这次是真的 ##
电话号码:
=end

phone = "156-1835-7999 #这是一个电话号码; #这真是一个电话号码; 这次是真的 ##"
phone = phone.sub!(/#.*$/,"")
puts "电话号码:#{phone}" #电话号码:156-1835-7999

phone = "156-1835-7999 #这是一个电话号码; #这真是一个电话号码; ##这次是真的 ##"
phone = phone.gsub!(/#.*/,"")
puts "电话号码:#{phone}" #电话号码:156-1835-7999

phone = "156-1835-7999 #这是一个电话号码; #这真是一个电话号码; ##这次是真的 ##"
phone = phone.gsub!(/#.*$/,"")
puts "电话号码:#{phone}" #电话号码:156-1835-7999


# 移除除数字以外的其他字符
phone = "156-1835-7999 #这是一个电话号码; #这真是一个电话号码; 这次是真的 ##"
phone = phone.gsub!(/\D/,"")
puts "电话号码:#{phone}" #电话号码:15618357999

































猜你喜欢

转载自www.cnblogs.com/suren2017/p/9282051.html
今日推荐