原文出处:
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/ (这里隐藏了含义,即反斜杆\,通常被我们成为转义符)
分享到:
- 2006-10-29 21:53
- 浏览 3462
- 评论(0)
- 论坛回复 / 浏览 (0 / 2654)
- 查看更多
相关推荐
本文将详细介绍Ruby中正则表达式的匹配和替换操作,以及如何处理结果分组和使用一些特殊全局变量。 #### 二、Ruby中的正则表达式基础 在Ruby中,正则表达式被用来搜索、提取和替换文本中的模式。Ruby支持多种正则...
在Ruby中,匹配操作符`=~`用于对字符串进行正则表达式匹配,如果匹配成功,它返回匹配开始的位置,否则返回`nil`。因此,可以将正则表达式用于`if`或`while`语句中进行条件判断。使用`match`方法则返回一个`...
内容概要:本文详细介绍了Ruby中正则表达式的使用方法。从基础语法入手讲解了正则表达式的组成成分,演示了各种匹配和搜索的功能,进一步探讨了正则表达式标志和高级特性,并且提供了实际案例来提升代码质量和工作...
The Book Of Ruby Ruby 正则表达式 正则表达式 正则表达式 正则表达式 正则表达式
Ruby中的正则表达式是一种强大的文本处理工具,用于在字符串中查找、替换或提取符合特定模式的文本。正则表达式通常用`//`来定义,并返回一个`RegExp`对象。接下来,我们将深入探讨Ruby正则表达式的主要知识点。 ##...
### Ruby正则表达式规则详解 #### 一、引言 在Ruby编程语言中,正则表达式(Regular Expression)是一种强大的文本处理工具,被广泛应用于字符串搜索与替换、数据验证以及模式匹配等场景。本篇文章将深入探讨Ruby...
接下来,我们将深入分析Ruby中正则表达式的使用,并指出一些需要注意的地方。 1. 字符串匹配与捕获组 Ruby允许通过正则表达式直接对字符串进行匹配。使用斜线(/ /)包裹正则表达式可以直接查询匹配的字符串。例如...
Ruby的case表达式有两种形式: 第一种形式接近于一组连续的if语句:它让你列出一组条件,并执行第一个为真的条件表达式所对应的语句。 第二种形式,在case语句的顶部指定一个目标,而每个when从句列出一个或者多个...
修饰符什么是/是修饰符? modifiers是方法修饰符的集合,也是制作更多的方法。 显然,方法修饰符会修改方法。 具体来说,在 Ruby 术语中,它们是类方法,它们: 取一个符号参数,它命名同一个类的实例方法,和返回...
js_regex,将Ruby正则表达式转换为JavaScript正则表达式。.zip
第三部分将之前介绍的各种知识落实到6种常用语言.net、java、javascript、php、python、ruby中,不但详细介绍了语言中正则表达式的用法,更点明了版本之间的细微差异,既可以作为专门学习的教材,也可以作为有用的...
它输出可以通过ruby2ruby gem进行操纵并转换回ruby的s表达式。 举个例子: def conditional1 arg1 return 1 if arg1 == 0 return 0 end 变成: s ( :defn , :conditional1 , s ( :args , :arg1 ), s ( :if , ...
在编写puppet的pp文件中,会用到很多ruby的正则表达式,常用的正则如下: 正则表达式: [codesyntax lang=”ruby”] {}: 重复次数(如 {4}表示前面的会重复出现恰好4次) {m,n}: 前面元素最少出现m次,最多出现n次 []...
我们再看一个更有趣的程序.这次我们来测试一个字符串是否和一个由简明模式(concise pattern)编码产生的描述相匹配. 在这些模式(pattern)里,...相当于 [0-9] \D 非数字字符 \b 退格符 (0x08) (仅在范围描述符
正则表达式的内建支持通常只限于脚本语言如Ruby,Perl和awk等,这是一个耻辱:尽管正则表达式很神秘,但它是一个强大的文本处理工具。通过内建而不是通过程序库接口来支持它,有很大的不同。 正则表达式只是一种指定...
Ruby-Treetop PEG解析表达式语法解析器是一种强大的工具,用于在Ruby环境中构建和解析复杂的语言结构。Treetop是Ruby社区中的一个流行库,它利用了解析表达式语法(PEG,Parsing Expression Grammar)的概念,使...
Citrus :: 解析 Ruby 的表达式 Citrus 是一个紧凑而强大的解析库,它结合了该语言的优雅和表现力以及的简单性和强大功能。 安装 通过 : $ gem install citrus 从本地副本: $ git clone git://github....