Ruby正则表达式
三种表示方法:
Regexp.new('^s*[a-z]')
/^s*[a-z]/
%r...{^s*[a-z]}
测试代码:
def show_reqexp(a, re)
if a =~ re
"#{$`} << #{$&} >> #{$'}"
else
"no match"
end
end
puts show_reqexp("Fats Waller", /ll/)结果:Fats Wa << ll >> er
注意:$&:相匹配的字符; $`:匹配字符前的字符; $': 匹配字符后的字符。
此外,还有一些全局变量$~,$1……$9也保存了相关信息, 其中,$~保存了关于匹配的所有信息,而$1等等保存了相应第几个匹配值信息。
本文介绍了Ruby中正则表达式的三种表示方法,并通过实例演示了如何使用这些表达式进行字符串匹配,包括如何获取匹配部分及其前后的内容。
858

被折叠的 条评论
为什么被折叠?



