浏览 2654 次
锁定老帖子 主题:Ruby中正则表达式的修饰符(译)
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2006-10-29
http://www.regular-expressions.info/ruby.html 在Ruby中使用正则表达式 Ruby支持正则表达式作为其一项语言特性。在Ruby中,正则表达式被写作 /模版/修饰符 的形式,这里的"模版"就是正则表达式本身,而"修饰符"则是一系列不同选项字符的标识,另外,"修饰符"部分是可选的。这个语法特点从Perl借鉴而来。 Ruby支持如下的修饰符: /i 使正则表达式大小写不敏感(正则表达式本身是大小写敏感的) /m 使"."匹配新行。Ruby使用/m,然而Perl和其他很多编程语言使用/s来实现"点(.)匹配新行"。 /o 它将致使任何的 #{...}替换符在一个特殊的正则表达式中仅仅被执行一次,它在第一次会被求值。然而,如果没有用/o,替换符将会每次都执行,并且产生一个Regexp对象。 你能同时使用如上的修饰符象这样: /rgex/is 在Ruby中,^字符号和$符号总是匹配新行的前后。Ruby没有修饰符能够改变这个特点。使用\A 和 \Z 可以匹配在字符串的始端或者末端。 因为正斜杆界定了正则表达式的长度,所以任何出现在正则表达式中的正斜杆都将被除去。例如,在ruby中,正则表达式 1/2 被写做 /1\/2/ (这里隐藏了含义,即反斜杆\,通常被我们成为转义符) 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |