Ruby语言虽然说是一种比较新的编程语言,但是它还是和其他语言有不少的相似之处。比如在Ruby正则表达式方面,就和Perl几乎一样。#t#
反向引用 :-)不知道该怎么翻译,所以请 Rufas(Ruby Fans) 原谅我借用了 Perl 的名词。
反向引用就是引用Ruby正则表达式中被括号括起来的模式,下面两行的模式就是相同的,只是第二句采用了反向引用的形式。
- pat1 = /([\d\w])-([\d\w])/
- pat2 = /([\d\w])-\1/
Ruby正则表达式需要注意的是反向引用的括号必须位于引用位置的左边。另外,如果在反向引用之后想要紧接着匹配一个数字,那么必须把反向引用表达式括起来。
- pat1 = /([\d\w])-(\1)0/
- pat2 = /([\d\w])-\10/
- # 0
- print pat1 =~ "1-10"
- # nil
- print pat2 =~ "1-10"