`

正则表达式中的特殊字符一览

阅读更多

〓简介〓

字符意义:对于字符,通常表示按字面意义,指出接着的字符为特殊字符,不作解释。

例如:/b/匹配字符'b',通过在b 前面加一个反斜杠,也就是/b/,则该字符变成特殊字符,表示匹配一个单词的分界线。或者:对于几个字符,通常说明是特殊的,指出紧接着的字符不是特殊的,而应该按字面解释。例如:*是一个特殊字符,匹配任意个字符(包括0个字符);例如:/a*/意味匹配0个或多个a。为了匹配字面上的*,在a前面加一个反斜杠;例如:/a*/匹配'a*'

〓正文〓

字符

意义:对于字符,通常表示按字面意义,指出接着的字符为特殊字符,不作解释。

例如:/b/匹配字符'b',通过在b 前面加一个反斜杠,也就是/b/,则该字符变成特殊字符,表示

匹配一个单词的分界线。

或者:

对于几个字符,通常说明是特殊的,指出紧接着的字符不是特殊的,而应该按字面解释。

例如:*是一个特殊字符,匹配任意个字符(包括0个字符);例如:/a*/意味匹配0个或多个a

为了匹配字面上的*,在a前面加一个反斜杠;例如:/a*/匹配'a*'

字符^

意义:表示匹配的字符必须在最前边。

例如:/^A/不匹配"an A,"中的'A',但匹配"An A."中最前面的'A'

字符$

意义:与^类似,匹配最末的字符。

例如:/t$/不匹配"eater"中的't',但匹配"eat"中的't'

 

字符*

意义:匹配*前面的字符0次或n次。

例如:/bo*/匹配"A ghost booooed"中的'boooo'"A bird warbled"中的'b',但不匹配"A goat g

runted"中的任何字符。

 

字符+

意义:匹配+号前面的字符1次或n次。等价于{1,}

例如:/a+/匹配"candy"中的'a'"caaaaaaandy."中的所有'a'

 

字符?

意义:匹配?前面的字符0次或1次。

例如:/e?le?/匹配"angel"中的'el'"angle."中的'le'

 

字符.

意义:(小数点)匹配除换行符外的所有单个的字符。

例如:/.n/匹配"nay, an apple is on the tree"中的'an''on',但不匹配'nay'

 

 

字符(x)

意义:匹配'x'并记录匹配的值。

例如:/(foo)/匹配和记录"foo bar."中的'foo'。匹配子串能被结果数组中的素[1], ..., [n]

回,或被RegExp对象的属性$1, ..., $9返回。

 

字符x|y

意义:匹配'x'或者'y'

例如:/green|red/匹配"green apple"中的'green'"red apple."中的'red'

 

字符{n}

意义:这里的n是一个正整数。匹配前面的n个字符。

例如:/a{2}/不匹配"candy,"中的'a',但匹配"caandy," 中的所有'a'"caaandy."中前面的两个

'a'

 

字符{n,}

意义:这里的n是一个正整数。匹配至少n个前面的字符。

例如:/a{2,}不匹配"candy"中的'a',但匹配"caandy"中的所有'a'"caaaaaaandy."中的所有'a'

 

字符{n,m}

意义:这里的nm都是正整数。匹配至少n个最多m个前面的字符。

例如:/a{1,3}/不匹配"cndy"中的任何字符,但匹配 "candy,"中的'a'"caandy," 中的前面两个

'a'"caaaaaaandy"中前面的三个'a',注意:即使"caaaaaaandy" 中有很多个'a',但只匹配前面的三

'a'"aaa"

 

字符[xyz]

意义:一字符列表,匹配列出中的任一字符。你可以通过连字符-指出一个字符范围。

例如:[abcd][a-c]一样。它们匹配"brisket"中的'b'"ache"中的'c'

 

字符[^xyz]

意义:一字符补集,也就是说,它匹配除了列出的字符外的所有东西。 你可以使用连字符-指出一

字符范围。

例如:[^abc][^a-c]等价,它们最早匹配"brisket"中的'r'"chop."中的'h'

 

字符[b]

意义:匹配一个空格(不要与b混淆)

 

字符b

意义:匹配一个单词的分界线,比如一个空格(不要与[b]混淆)

例如:/bnw/匹配"noonday"中的'no'/wyb/匹配"possibly yesterday."中的'ly'

 

字符B

意义:匹配一个单词的非分界线

例如:/wBn/匹配"noonday"中的'on'/yBw/匹配"possibly yesterday."中的'ye'

 

字符cX

意义:这里的X是一个控制字符。匹配一个字符串的控制字符。

例如:/cM/匹配一个字符串中的control-M

 

字符d

意义:匹配一个数字,等价于[0-9]

例如:/d//[0-9]/匹配"B2 is the suite number."中的'2'

 

字符D

意义:匹配任何的非数字,等价于[^0-9]

例如:/D//[^0-9]/匹配"B2 is the suite number."中的'B'

 

字符f

意义:匹配一个表单符

 

字符n

意义:匹配一个换行符

 

字符r

意义:匹配一个回车符

 

字符s

意义:匹配一个单个white空格符,包括空格,tabform feed,换行符,等价于[ fnrtv]

例如:/sw*/匹配"foo bar."中的' bar'

 

字符S

意义:匹配除white空格符以外的一个单个的字符,等价于[^ fnrtv]

例如:/S/w*匹配"foo bar."中的'foo'

 

字符t

意义:匹配一个制表符

 

字符v

意义:匹配一个顶头制表符

 

字符w

意义:匹配所有的数字和字母以及下划线,等价于[A-Za-z0-9_]

例如:/w/匹配"apple,"中的'a'"$5.28,"中的'5'"3D."中的'3'

 

字符W

意义:匹配除数字、字母外及下划线外的其它字符,等价于[^A-Za-z0-9_]

例如:/W/或者/[^$A-Za-z0-9_]/匹配"50%."中的'%'

 

字符n

意义:这里的n是一个正整数。匹配一个正则表达式的最后一个子串的n的值(计数左圆括号)

 

例如:/apple(,)sorange1/匹配"apple, orange, cherry, peach."中的'apple, orange',下面

有一个更加完整的例子。

注意:如果左圆括号中的数字比n指定的数字还小,则n取下一行的八进制escape作为描述。

 

字符ooctalxhex

意义:这里的ooctal是一个八进制的escape值,而xhex是一个十六进制的escape值,允许在一个正则表达式中嵌入ASCII码。

分享到:
评论

相关推荐

    正则表达式中的特殊字符一览.docx

    正则表达式中的特殊字符一览 正则表达式中的特殊字符是指在模式匹配中具有特殊意义的字符,它们可以用来定义模式的匹配规则。下面是常见的特殊字符及其意义: 1. 字符\:表示将下一个字符标记为特殊字符,例如/b/...

    正则表达式一览

    正则表达式是一种强大的文本处理工具,用于匹配、查找、替换和提取字符串中的模式。它在.NET Framework中得到了广泛的应用,允许程序员和开发者处理复杂的文本匹配任务。以下是一些正则表达式的关键概念和语法: 1....

    正则表达式语法一览表(单页)

    ### 正则表达式语法一览表详解 #### 一、锚点(Anchors) - **^**:匹配字符串的开头。 - **\A**:同样用于匹配字符串的开头,但与^的区别在于,\A不会在多行模式下匹配每一行的开头,而^可以。 - **$**:匹配字符...

    实用性特殊字符全部一览

    - **描述**:在正则表达式中,某些字符具有特定的含义,可以用来匹配一类字符或指定数量的字符。 - **示例**: - `/b/`:匹配单词边界。 - 示例:`"b", "ab"` 表示匹配“b”前后的边界。 - `*`:匹配零次或多次...

    javaScript资料大全

    正则表达式在JavaScript中用于文本模式匹配和处理,是编程中的强大工具,对于字符串操作和数据验证至关重要。 2. **JavaScript高级教程.chm**: 这个文件可能是针对JavaScript进阶学习者的指南,内容可能包括异步...

    Word查找替换之代码和通配符一览表

    虽然Word本身不支持完整的正则表达式,但通过宏或第三方插件如“Wildcards for Word”,可以扩展查找和替换功能,实现更复杂的文本处理。 7. **使用技巧** - 在大量文档中批量修改格式时,查找替换功能极其有用。...

    算法-第4版-完整版

    5.4.1 使用正则表达式描述模式 514 5.4.2 缩略写法 516 5.4.3 正则表达式的实际应用 517 5.4.4 非确定有限状态自动机 518 5.4.5 模拟NFA的运行 520 5.4.6 构造与正则表达式对应的 5.5 数据压缩 ...

    算法 第4版-谢路云译-带完整书签

    5.4.6 构造与正则表达式对应的NFA 522 5.5 数据压缩 529 5.5.1 游戏规则 529 5.5.2 读写二进制数据 530 5.5.3 局限 533 5.5.4 热身运动:基因组 534 5.5.5 游程编码 537 5.5.6 霍夫曼压缩 540 第6章...

    算法 第4版 高清中文版

    5.4.1 使用正则表达式描述模式 514 5.4.2 缩略写法 516 5.4.3 正则表达式的实际应用 517 5.4.4 非确定有限状态自动机 518 5.4.5 模拟NFA的运行 520 5.4.6 构造与正则表达式对应的 5.5 数据压缩 529 5.5.1 ...

    《算法》中文版,Robert Sedgewick,塞奇威克

    编辑推荐  Sedgewick之巨著,与...5.4.6 构造与正则表达式对应的 5.5 数据压缩 5.5.1 游戏规则 5.5.2 读写二进制数据 5.5.3 局限 5.5.4 热身运动:基因组 5.5.5 游程编码 5.5.6 霍夫曼压缩 第6章 背景 索引

    算法,4th,塞奇威克 (Robert Sedgewick)韦恩 (Kevin Wayne), 谢路云 译.azw3

    算法,4th,塞奇威克,中文版 ...5.4.6 构造与正则表达式对应的NFA 5.5 数据压缩 5.5.1 游戏规则 5.5.2 读写二进制数据 5.5.3 局限 5.5.4 热身运动:基因组 5.5.5 游程编码 5.5.6 霍夫曼压缩 第6章 背景 索引

    JAVA字符串处理函数列表一览.pdf

    8. `replaceAll()`:使用正则表达式替换字符串中的匹配项,例如删除所有空格:`str.replaceAll("\\s", "")`。 9. `charAt(int index)`:获取指定索引处的单个字符。 10. `getChars()`:将字符串的一部分复制到字符...

    ES6、ES7、ES8、ES9、ES10新特性一览1

    允许在正则表达式中使用命名捕获组,便于识别和提取匹配结果。 ### ES10(2019) #### 1. `String.trimStart()` 和 `trimEnd()` 这两个方法分别用于移除字符串开头和结尾的空白字符。 #### 2. `Function....

    python常用的库大全

    7. **esmre**:正则表达式的加速器,可以显著提高正则表达式匹配的速度,特别是在处理大量文本数据时表现优异。 8. **shortuuid**:一组用于生成简洁URL或UUID的函数库,常用于短链接服务或唯一标识符生成。 9. ...

    JavaScript语法一览表

    以上只是JavaScript语法的一小部分,实际的“JavaScript语法一览表”会更详细,涵盖更多概念,如正则表达式、原型链、类、生成器、迭代器等。深入理解并熟练运用这些语法是成为一名优秀的JavaScript开发者的必备条件...

    PERL内置变量$.等

    - **$&**:匹配正则表达式的最后一次成功匹配的字符串。 - **$(** 和 **$)**:分别表示当前进程的父进程ID和父进程的有效用户ID。 - **$***:当为1时,指示程序正在使用多线程;默认情况下为0。 - **$,**:列表项...

Global site tag (gtag.js) - Google Analytics