Ruby 教程 之 Ruby 正则表达式 9
Ruby 正则表达式
正则表达式是一种特殊序列的字符,它通过使用有专门语法的模式来匹配或查找字符串集合。
正则表达式用事先定义好的一些特定字符、及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑。
正则表达式实例
搜索和替换
sub 和 gsub 及它们的替代变量 sub! 和 gsub! 是使用正则表达式时重要的字符串方法。
所有这些方法都是使用正则表达式模式执行搜索与替换操作。sub 和 sub! 替换模式的第一次出现,gsub 和 gsub! 替换模式的所有出现。
sub 和 gsub 返回一个新的字符串,保持原始的字符串不被修改,而 sub! 和 gsub! 则会修改它们调用的字符串。
实例
!/usr/bin/ruby
-- coding: UTF-8 --
phone = "132-3659-1111 #这是一个电话号码"
删除 Ruby 的注释
phone = phone.sub!(/#.*$/, "")
puts "电话号码 : #{phone}"
移除数字以外的其他字符
phone = phone.gsub!(/\D/, "")
puts "电话号码 : #{phone}"
尝试一下 »
以上实例运行输出结果为:
电话号码 : 132-3659-1111
电话号码 : 13236591111