正则表达式中需要转义的特殊字符

如果要查找文件名中有的文件,则需要对进行转义,即在其前加一个\ls \*.txt。正则表达式有以下特殊字符。

$
匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 ‘\n' 或 ‘\r'。要匹配 $ 字符本身,请使用 \$。

( )
标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 \( 和 \)。

*
匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。

+
匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+。

.
匹配除换行符 \n之外的任何单字符。要匹配 .,请使用 \。

[ ]
标记一个中括号表达式的开始。要匹配 [,请使用 \[。

?
匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用 \?。

\
将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, ‘n' 匹配字符 ‘n'。'\n' 匹配换行符。序列 ‘\\' 匹配 “\”,而 ‘\(' 则匹配 “(”。

^
匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 \^。

{ }
标记限定符表达式的开始。要匹配 {,请使用 \{。

|
指明两项之间的一个选择。要匹配 |,请使用 \|。

所以代码如下:

* . ? + $ ^ [ ] ( ) { } | \ /

构造正则表达式的方法和创建数学表达式的方法一样。也就是用多种元字符与操作符将小的表达式结合在一起来创建更大的表达式。正则表达式的组件可以是单个的字符、字符集合、字符范围、字符间的选择或者所有这些组件的任意组合。

相关推荐

书写高效的正则表达式,正则表达式性能优化方法

书写高效的正则表达式,正则表达式性能优化方法

影响 NFA 类正则表达式(常见语言:GNU Emacs,Java,ergp,less,more,.NET语言,PCRE library,Perl,PHP,Python,Ruby,sed,vi ) 其实主要是它的“回溯”,减少“回溯”次数(减少循环查找同一个字符次数),是提高性能的主要方法。 演示 示例 源字符串: 匹配要求:匹配 标签里面所有内容,包括改标签 方法 1 因为 (测试工具使用了: ...

正则表达式匹配原理与解析过程探讨分析

正则表达式匹配原理与解析过程探讨分析

已经有多篇关于正则表达式介绍的文章,随着我们越来越多使用正则表达式,想对性能做优化、减少我们正则表达式书写匹配 Bug。我们不得不进一步深入了解正则表达式执行过程了。下面我们一起学习,分析下正则表达式执行过程。 我们会用 regexbuddy 测试工具分解执行过程,具体工具使用,可以看:正则表达式性能测试工具推荐、 ...

正则表达式的修正符:i、g、m、s、x、e

正则表达式的修正符:i、g、m、s、x、e

正则表达式中常用的模式修正符有 i、g、m、s、x、e等。它们之间可以组合搭配使用。 它们的作用如下: 修正符:i 不区分大小写的匹,如: /abc/i 可以与 abc 或 aBC 或 ABc 等匹配。 修正符:g 表示全局匹配 修正符:m 将字符串视为多行,不管是那行都能匹配。例,模式为:$mode="/abc/m"; ,要匹配的字符串为:$str="bcefg5 ...

微信扫一扫,分享到朋友圈

正则表达式中需要转义的特殊字符