字符
描述
\ |
将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。 |
^ |
匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置。 |
$ |
匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位置。 |
* |
匹配前面的子表达式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等价于{0,}。 |
+ |
匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 {1,}。 |
? |
匹配前面的子表达式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等价于 {0,1}。 |
{n} |
n 是一个非负整数。匹配确定的 n 次。例如,'o{2}' 不能匹配 "Bob" 中的 'o',但是能匹配 "food" 中的两个 o。 |
{n,} |
n 是一个非负整数。至少匹配n 次。例如,'o{2,}' 不能匹配 "Bob" 中的 'o',但能匹配 "foooood" 中的所有 o。'o{1,}' 等价于 'o+'。'o{0,}' 则等价于 'o*'。 |
{n,m} |
m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。例如,"o{1,3}" 将匹配 "fooooood" 中的前三个 o。'o{0,1}' 等价于 'o?'。请注意在逗号和两个数之间不能有空格。 |
? |
当该字符紧跟在任何一个其他限制符 (*, +, ?, {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串 "oooo",'o+?' 将匹配单个 "o",而 'o+' 将匹配所有 'o'。 |
. |
匹配除 "\n" 之外的任何单个字符。要匹配包括 '\n' 在内的任何字符,请使用象 '[.\n]' 的模式。 |
(pattern) |
匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中则使用 $0…$9 属性。要匹配圆括号字符,请使用 '\(' 或 '\)'。 |
(?:pattern) |
匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 "或" 字符 (|) 来组合一个模式的各个部分是很有用。例如, 'industr(?:y|ies) 就是一个比 'industry|industries' 更简略的表达式。 |
(?=pattern) |
正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,'Windows (?=95|98|NT|2000)' 能匹配 "Windows 2000" 中的 "Windows" ,但不能匹配 "Windows 3.1" 中的 "Windows"。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。 |
(?!pattern) |
负向预查,在任何不匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如'Windows (?!95|98|NT|2000)' 能匹配 "Windows 3.1" 中的 "Windows",但不能匹配 "Windows 2000" 中的 "Windows"。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始 |
x|y |
匹配 x 或 y。例如,'z|food' 能匹配 "z" 或 "food"。'(z|f)ood' 则匹配 "zood" 或 "food"。 |
[xyz] |
字符集合。匹配所包含的任意一个字符。例如, '[abc]' 可以匹配 "plain" 中的 'a'。 |
[^xyz] |
负值字符集合。匹配未包含的任意字符。例如, '[^abc]' 可以匹配 "plain" 中的'p'。 |
[a-z] |
字符范围。匹配指定范围内的任意字符。例如,'[a-z]' 可以匹配 'a' 到 'z' 范围内的任意小写字母字符。 |
[^a-z] |
负值字符范围。匹配任何不在指定范围内的任意字符。例如,'[^a-z]' 可以匹配任何不在 'a' 到 'z' 范围内的任意字符。 |
\b |
匹配一个单词边界,也就是指单词和空格间的位置。例如, 'er\b' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的 'er'。 |
\B |
匹配非单词边界。'er\B' 能匹配 "verb" 中的 'er',但不能匹配 "never" 中的 'er'。 |
\cx |
匹配由 x 指明的控制字符。例如, \cM 匹配一个 Control-M 或回车符。x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 'c' 字符。 |
\d |
匹配一个数字字符。等价于 [0-9]。 |
\D |
匹配一个非数字字符。等价于 [^0-9]。 |
\f |
匹配一个换页符。等价于 \x0c 和 \cL。 |
\n |
匹配一个换行符。等价于 \x0a 和 \cJ。 |
\r |
匹配一个回车符。等价于 \x0d 和 \cM。 |
\s |
匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。 |
\S |
匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。 |
\t |
匹配一个制表符。等价于 \x09 和 \cI。 |
\v |
匹配一个垂直制表符。等价于 \x0b 和 \cK。 |
\w |
匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。 |
\W |
匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'。 |
\xn |
匹配 n,其中 n 为十六进制转义值。十六进制转义值必须为确定的两个数字长。例如,'\x41' 匹配 "A"。'\x041' 则等价于 '\x04' & "1"。正则表达式中可以使用 ASCII 编码。. |
\num |
匹配 num,其中 num 是一个正整数。对所获取的匹配的引用。例如,'(.)\1' 匹配两个连续的相同字符。 |
\n |
标识一个八进制转义值或一个向后引用。如果 \n 之前至少 n 个获取的子表达式,则 n 为向后引用。否则,如果 n 为八进制数字 (0-7),则 n 为一个八进制转义值。 |
\nm |
标识一个八进制转义值或一个向后引用。如果 \nm 之前至少有 nm 个获得子表达式,则 nm 为向后引用。如果 \nm 之前至少有 n 个获取,则 n 为一个后跟文字 m 的向后引用。如果前面的条件都不满足,若 n 和 m 均为八进制数字 (0-7),则 \nm 将匹配八进制转义值 nm。 |
\nml |
如果 n 为八进制数字 (0-3),且 m 和 l 均为八进制数字 (0-7),则匹配八进制转义值 nml。 |
\un |
匹配 n,其中 n 是一个用四个十六进制数字表示的 Unicode 字符。例如, \u00A9 匹配版权符号 (?)。 |
相关推荐
### 正则表达式列表详解 #### 基本概念 正则表达式是一种用于文本匹配、搜索和替换的强大工具。它由一系列符号和字符组成,可以用来定义文本的模式。正则表达式广泛应用于各种编程语言和工具中,如Python、...
在Python编程语言中,正则表达式是一种强大的文本处理工具,用于匹配、查找、替换等操作。本节将深入探讨`re.compile()`函数及其在创建正则表达式对象中的应用。`re.compile()`是Python标准库`re`模块中的一员,它...
其中,(xxexp)函数用于对字符串进行正则表达式匹配测试,返回匹配的字符列表或无一匹配返回nil。(xxexpr)函数用于对字符串进行正则表达式替换,返回替换后的字符串。 在CAD二次开发软件LISP中应用正则表达式可以...
在Excel表格处理中,正则表达式是一种强大的文本匹配工具,可以帮助我们进行复杂的数据验证、查找和替换操作。虽然默认情况下,WPS Excel并不直接支持正则表达式,但通过其自定义函数功能,我们可以创建自己的函数来...
3. **分割字符串为单词列表**:使用正则表达式`\b\w+\b`将字符串拆分为单词列表。 ```python words = re.findall(r'\b\w+\b', text) ``` 4. **创建词频字典**:使用Python的`collections.Counter`来计算每个单词...
标题“用正则表达式提取SQL”涉及到的是在编程中如何使用正则表达式来从文本或代码中抓取SQL语句的相关知识。在IT领域,正则表达式(Regular Expression)是一种强大的文本处理工具,它能快速地匹配、查找、替换或者...
【字符串与正则表达式】 在Python编程中,字符串是数据类型之一,广泛应用于文本处理。第五章“字符串与正则表达式”深入探讨了这一关键主题,旨在帮助初学者和有经验的开发者更好地理解和使用字符串及正则表达式。...
本次解析的是一个关于正则表达式通用方法的代码片段,该方法旨在从给定的文本中提取符合指定正则表达式的分组信息,并将其存储为列表中的映射结构返回。 ### 正则表达式通用方法详解 #### 方法定义 ```java public...
这些概念可能涉及到使用正则表达式处理复杂的数据结构,例如,使用哈希表存储和查找匹配项,列表的米索问题可能涉及排序或搜索列表中的特定模式,而地图在正则表达式中的应用可能是用正则表达式处理地图数据或解析...
「正则表达式大全」 正则表达式是计算机科学中的一种模式匹配语言,用于描述字符串的模式。它最早是由数学家 Stephen Kleene 于 1956 年提出,是对自然语言的递增研究成果的基础上提出来的。正则表达式现在已经成为...
文件名称列表中的"TestRegExp"可能是这个工具的主程序或库文件,运行后即可启动正则表达式测试工具。通过这个工具,无论是初学者还是经验丰富的开发者,都可以更有效地编写和测试他们的正则表达式,从而提升代码质量...
"Python程序员必会的正则表达式" 正则表达式是一种逻辑公式,用于对字符串进行操作,包括检索、截取、替换等操作。正则表达式由特定字符和其组合组成,遵循一定的语法规则,具有很强的灵活性和功能性。 正则表达式...
正则表达式是一种强大的文本处理工具,用于匹配、查找、替换和分析字符串。在编程语言中,正则表达式常用于数据验证、搜索和提取信息等任务,极大地提高了开发效率。下面将详细介绍给定文件中提到的一些关键正则...
findall 函数是将正则表达式应用于整个字符串,并将所有匹配的结果以列表形式返回。如果没有匹配到任何结果,那么将返回一个空列表。例如: ``` import re a = '0355-67796666' b = re.compile(r'\d+-\d{8}') r = b....
Python正则表达式是Python编程语言中的一个强大工具,用于处理和分析文本字符串。它允许开发者通过模式匹配来查找、替换或提取数据,广泛应用于数据清洗、文本挖掘、日志分析等领域。在Python中,正则表达式主要通过...
使用`Array.prototype.join()`方法将关键词列表转换为一个用管道符号`|`分隔的字符串,这样就形成了一个可以匹配任意关键词的正则表达式模式。例如,`new RegExp(keywords.join("|"), "gi")`将创建一个全局(g)和...
`re.findall`返回字符串中所有匹配正则表达式的子串列表。 10. 正则表达式的贪婪与非贪婪模式:默认情况下,正则表达式是贪婪的,意味着它们会尽可能多地匹配字符。通过在量词后面添加`?`可以使其成为非贪婪模式,...
8. split(pattern, string[, maxsplit=0]):这个函数根据正则表达式模式分割字符串,并返回一个列表。 9. escape(pattern):这个函数用来转义正则表达式中的特殊字符,如*、+、?等。 使用正则表达式时,可以通过...
对于初学者来说,编写正则表达式可能会有一定难度,因此,使用在线正则表达式测试工具可以帮助调试和验证正则表达式的正确性和效率。 由于文档是通过OCR技术扫描识别的,可能会有文字识别错误,这需要读者结合上...
标题中的"(C#)正则表达式快速验证工具"指的是一个使用C#编程语言开发的软件应用,专门用于测试和验证正则表达式。在IT领域,正则表达式(Regex)是一种强大的文本处理工具,它能高效地进行模式匹配、搜索、替换等...