正则表达式不匹配字符 若要查找不包含特定字符的字符串,可以使用与括号中以外的任何内容匹配的否定字符类[^]。例如: [^13]将匹配不是1或3的任何单个字符。...[^1-3]将匹配不是1、2或3(即从1到3的任何数字)的任何单个字符。 在电话号码列表中,假设要查找没有国家代码的电话号码。...lemons)向右查找,看前面是否没有单词“lemons”。如果没有“lemons”,则该点与除换行符以外的任何字符匹配。...记住\w匹配任何字母、数字或下划线,我们得到以下正则表达式:[\w\.\-]+ 域名可能包括大小写字母、数字、连字符(但不在第一个或最后一个位置)和点(在子域的情况下)。...[a-z]{2,24}\b 但要使公式不区分大小写: =RegExpMatch(A5,A2,FALSE) 带匹配正则表达式的Excel IF公式 由于内置函数和自定义函数配合得很好,因此没有什么可以阻止在单个公式中同时使用它们
今天我们学习的内容是正则表达式! 一、正则表达式的概念 正则表达式 regular expression)是用来进行较复杂文本处理,特别是复杂的查找或替换处理的计算机语言。...我们在进行计算机编程或者文本处理时,通常需要进行一些文本的查找、替换。如果查找或替换的工作比较复杂,就需要借助正则表达式来完成。...如果我们需要搜索某个字符或字符串(单词),如字符i或者字符串in,则只需在文本阅读器的查找中输入in,即可查找到。...pattern为正则表达式, string为需要检索的字符串。re.search()方法用来检索某个字符串,并返回与正则表达式匹配的第一个结果。...\w \s \d \W \S \D \b 匹配所有字母、数字、空白和除换行符以外的任意字符 匹配任意字母或数字或下划线 匹配任意空白 匹配任意数字 匹配非字母和非数字字符(不匹配下划线)匹配非空白 匹配非数字
查找与替换: 判断给定字符串中是否包含满足正则表达式所指定的匹配规则的子串,如查找一段文本中的所包含的IP地址。另外,还可以对查找到的子串进行内容替换。...字符串分割与子串截取: 基于子串查找功能还可以以符合正则表达式所指定的匹配规则的字符串作为分隔符对给定的字符串进行分割。...匹配除换行符以外的任意字符 \ 将下一个字符标记为一个特殊字符 \w 匹配字母,数字,下划线或汉字 \s 匹配任意的空白符 \d 匹配数字,等价于[0-9] \b 匹配单词的开始或结束 ^ 匹配字符串的开始...\B 匹配不是单词开头或结束的位置 [^x] 匹配除了x以外的任意字符 [^abc] 匹配除了abc字母以外的任意字符 3.字符次数匹配 贪婪(贪心) ,如"*"字符 贪婪量词会首先匹配整个字符串,...[^\s@]+ 匹配网易邮箱:6-18个字符,只能包含字母、数字和下划线,且只能以字母开头 [a-zA-Z]\w{5,17}@(126|163)\.com 匹配qq邮箱:3-18个字符,只能包含字母、数字
查找与替换: 判断给定字符串中是否包含满足正则表达式所指定的匹配规则的子串,如查找一段文本中的所包含的IP地址。另外,还可以对查找到的子串进行内容替换。...字符串分割与子串截取: 基于子串查找功能还可以以符合正则表达式所指定的匹配规则的字符串作为分隔符对给定的字符串进行分割。...匹配除换行符以外的任意字符 \ 将下一个字符标记为一个特殊字符 \w 匹配字母,数字,下划线或汉字 \s 匹配任意的空白符 \d 匹配数字,等价于[0-9] \b 匹配单词的开始或结束 ^ 匹配字符串的开始...\B 匹配不是单词开头或结束的位置 [^x] 匹配除了x以外的任意字符 [^abc] 匹配除了abc字母以外的任意字符 3.字符次数匹配 贪婪(贪心) ,如"*"字符 贪婪量词会首先匹配整个字符串,...[^\s@]+ 匹配网易邮箱:6-18个字符,只能包含字母、数字和下划线,且只能以字母开头 [a-zA-Z]\w{5,17}@(126|163)\.com 匹配qq邮箱:3-18个字符,只能包含字母、
当然,代价就是更复杂,比如你可以编写一个正则表达式,用来查找所有以 0 开头,后面跟着 2-3 个数字,然后是一个连字号 “-” ,最后是 7 或 8 位数字的字符串(像 011-12345678 或...如果要精确地查找 me 这个单词的话,我们应该使用 \bme\b。 \b 是正则表达式规定的一个特殊代码(有些人叫它元字符,metacharacter),代表着单词的开头或结尾,也就是单词的分界处。...普通字符包括大小写的字母和数字,而元字符则具有特殊的含义,要想真正的用好正则表达式,正确的理解元字符是最重要的事情。下表列出了常用的元字符 元字符 描述 ....6、字符类 要想查找数字、字母、数字、空白已经很简单,因为已经有了对应这些字符集合的元字符,但是如果你想匹配没有预定义元字符的字符集合(比如元音字母 a,e,i,o,u ),应该怎么办?...比如想查找除了数字以外,其它任意字符都行的情况,这时需要用到反义 元字符 描述 \w 匹配任意不是字母,数字,下划线,汉字的字符 \s 匹配任意不是空白符的字符 \D 匹配任意非数字的字符 \B 匹配不是单词开头或结束的位置
正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。 特殊符号: "....非打印字符 \b 单词边界,一个\w与\W之间的范围 \B 非单词边界 \w 匹配一个字母或数字 \W 与\w的意思相反 正则表达式不仅适用于ASCII字符还适用于unicode的数字字符。...匹配前边的子表达式0次或者一次。也可以指明一个非贪婪限定符 \ 将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, ‘n’ 匹配字符 ‘n’。’\n’ 匹配换行符。...\_]可以匹配一个数字、字母或者下划线; [0-9a-zA-Z\_]+可以匹配至少由一个数字、字母或者下划线组成的字符串,比如'a100','0_Z','Py3000'等等; [a-zA-Z\_][0-...9a-zA-Z\_]*可以匹配由字母或下划线开头,后接任意个由一个数字、字母或者下划线组成的字符串,也就是 Python 合法的变量; [a-zA-Z\_][0-9a-zA-Z\_]{0, 19}更精确地限制了变量的长度是
\w匹配字母或数字或下划线或汉字等。...匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束 元字符 ^(和数字 6在同一个键位上的符号...(或整个字符串的第一个单词,具体匹配哪个意思得看选项设置) 字符类 要想查找数字,字母或数字,空白是很简单的,因为已经有了对应这些字符集合的元字符,但是如果你想匹配没有预定义元字符的字符集合(比如元音字母...比如想查找除了数字以外,其它任意字符都行的情况,这时需要用到反义: 代码/语法 说明 \W 匹配任意不是字母,数字,下划线,汉字的字符 \S 匹配任意不是空白符的字符 \D 匹配任意非数字的字符 \B...这是因为 [^u]总要匹配一个字符,所以如果q是单词的最后一个字符的话,后面的 [^u]将会匹配q后面的单词分隔符(可能是空格,或者是句号或其它的什么),后面的 \w*\b将会匹配下一个单词,于是 \b
第三章 正则表达式基础与应用 3.1 认识正则表达式 正则表达式就是用某种模式去匹配一类字符串的公式。...分隔符:是除了字母,数字,反斜线以及空白字符意外的任何字符(如/ !...Expression Tester 3.2 正则表达式中的元字符 \b 是正则表达式规定的一个特殊代码,代表单词的开头或者结尾,也就是单词的分界处。...匹配除换行符以外的任何字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束 - 表示范围 [] 匹配括号中的任意一个字符...反义 常用反义 描述 \W 匹配任意不是字母,数字,下划线,汉子的字符 \S 匹配任意不是空白符的字符 \D 匹配任意非数字的字符 \B 匹配不是单词开头或者结束的位置 [^x] 匹配除了x以外的任意字符
第2章 正则语法-元字符 正则表达式中的字符: 元字符:一些具有特殊含义的特殊符号。 普通字符:包括所有大写和小写字母、所有数字、所有标点符号和一些其他符号。...\w 匹配一个字母、数字、下划线。等价于[A-Za-z0-9_]。 \W 匹配非(字母、数字、下划线)。等价于 [ ^A-Za-z0-9_]。 \s 匹配任何空白字符,包括空格、制表符、换页符等等。...定位符用来描述字符串或单词的边界,^ 和 $ 分别指字符串的开始与结束,\b 描述单词的前或后边界,\B 表示非单词边界。...i 执行对大小写不敏感的匹配。实际上就是不区分大小写的匹配(默认区分大小写) g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 m 执行多行匹配(^和$能匹配每行的开始与结束)。...(res);//["1234", "5678"] 6、转义字符(\) \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。
bucket$ 这个模式与"Who kept all of this cash in a bucket"匹配,与"buckets"不匹配。字符^和$同时使用时,表示精确匹配(字符串与模式一样)。...还用前面的例子,我们要求第一个字符不能是数字: ^[^0-9][0-9]$ 这个模式与"&5"、"g7"及"-2"是匹配的,但与"12"、"66"是不匹配的。...] 7.3 确定重复出现 到现在为止,你已经知道如何去匹配一个字母或数字,但更多的情况下,可能要匹配一个单词或一组数字。...我们可以把模式扩展到更多的单词或数字: ^[a-zA-Z0-9_]{1,}$ //所有包含一个以上的字母、数字或下划线的字符串 ^[0-9]{1,}$ //所有的正数 ^\-{0,1}[0-9]{...最后,字符"+"与 {1,}是相等的,表示“1个或多个前面的内容”,所以上面的4个例子可以写成: ^[a-zA-Z0-9_]+$ //所有包含一个以上的字母、数字或下划线的字符串 ^[0-9]+$
正则表达式模式 模式字符串使用特殊的语法来表示一个正则表达式: 字母和数字表示他们自身,一个正则表达式模式中的字母和数字匹配同样的字符串。...匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 . 。 [ 标记一个中括号表达式的开始。要匹配 [,请使用 [。 \ 将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。...[a-z] 匹配任何小写字母 [A-Z] 匹配任何大写字母 [a-zA-Z0-9] 匹配任何字母及数字。等价于\w \w 匹配包括下划线的任何单词字符。等价于[A-Za-z0-9_]。...重复 下表列出了正则表达式中的重复相关的元字符及其含义: 字符 描述 * 匹配前一个字符零次或多次。 + 匹配前一个字符一次或多次。 ? 匹配前一个字符零次或一次。...{n} 匹配前一个字符恰好 n 次。 {n,} 匹配前一个字符至少 n 次。 {n,m} 匹配前一个字符至少 n 次,但是不超过 m 次。 特殊序列 特殊序列是具有特殊含义的反斜杠开头的序列。
模式描述在搜索文本时要匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。 普通字符 普通字符包括没有显式指定为元字符的所有可打印和不可打印字符。...\w 匹配字母、数字、下划线。等价于 [A-Za-z0-9_] 非打印字符 非打印字符也可以是正则表达式的组成部分。...定位符用来描述字符串或单词的边界,^ 和 $ 分别指字符串的开始与结束,\b 描述单词的前或后边界,\B 表示非单词边界。...元字符 下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。...\w 匹配字母、数字、下划线。等价于’[A-Za-z0-9_]'。 \W 匹配非字母、数字、下划线。等价于 ‘[^A-Za-z0-9_]’。 \xn 匹配 n,其中 n 为十六进制转义值。
如果同时使用其它元字符,我们就能构造出功能更强大的正则表达式。...\w匹配字母或数字或下划线或汉字等。...下面来看看更多的例子: \ba\w*\b匹配以字母a开头的单词——先是某个单词开始处(\b),然后是字母a,然后是任意数量的字母或数字(\w*),最后是单词结束处(\b)。...匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束 元字符^(和数字6在同一个键位上的符号...匹配一行的第一个单词(或整个字符串的第一个单词,具体匹配哪个意思得看选项设置) 字符类 要想查找数字,字母或数字,空白是很简单的,因为已经有了对应这些字符集合的元字符,但是如果你想匹配没有预定义元字符的字符集合
前言:今天先分享正则表达式的基础元字符,后续会分享正则表达式的子表达式,回溯引用,前后查找,嵌入条件,,全部分享完成之后,会尝试着去分享一些例子与拆分介绍。...二 正则表达式的字符区间 []这个元符号可以定义一个字符集合,字符集合能够与在该集合里的字符区间的字符相匹配。字符区间可以使用 - 连字符来定义范围。...的文本行结束标签 五 正则表达式的其他元字符 \d 匹配任何一个数字字符 \D 匹配任何一个非数字字符 \w 匹配任何一个字母数字字符(大小写)或者下划线字 符=[0-9a-zA-Z_] \W 匹配任何一个非字母数字或非下划线字符...匹配零个或者一个字符 举例:http与https {} 可以设定匹配字符的次数 {3} 匹配三次 {4,8} 匹配最少4次,最多8次 {3,} 匹配重复最少3次 七 正则表达式的贪婪型字符与懒惰型字符...八 正则表达式边界字符 \w相匹配的字符叫做单词边界,\W相匹配的叫做非单词边界 \b单词边界字符,例如:至匹配 at 而不匹配 what,可以使用 --\bat\b \B匹配一个前后都不是单词边界的连字符
匹配数字(非数字) 元字符 说明 \d 任何一个数字字符(等价于[0-9]) \D 任何一个非数字字符(等价于[^0-9]) 匹配字母和数字(非字母和数字) 元字符 说明 \w 任何一个字母数字字符或下划线字符...([a-zA-Z0-9_]) \W 任何一个非字母数字字符或下划线字符([^a-zA-Z0-9_]) 文本 11213 A1C2E3 48075 M1B4F2 正则表达式 \w\d\w\d\w\d 结果...匹配一个或多个字符 要想匹配同一个字符(或字符集合)的多次重复,只要简单地给这个字符(或字符集合)加上一个+字符作为后缀就可以了。+匹配一个或多个字符(至少一个,不匹配零个字符的情况)。...*:负责匹配电子邮件第一个字符之后、@字符之前的所有字符——这个部分可以包含零个或多个字母数字字符和.字符。 匹配零个或一个字符 ?只能匹配一个字符(或字符集合)的零次或一次出现,最多不超过一次。...\b匹配的是这样的位置,这个位置位于一个能够用来构成单词的字符(字母、数字和下划线,也就是与\w相匹配的字符)和一个不能用来构成单词的字符(\W)之间。 如果不想匹配单词边界,使用\B。
正则表达式简介 正则表达式(Regular Expression): 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的租和,组成一个“规则字符串”,这个规则字符串用来表达对字符串的一种过滤逻辑...正则表达式的组成 普通字符 abc 中国 123 等 特殊字符(元字符、限定符、中括号):正则表达式中有特殊意义的字符。 元字符 元字符就是在正则表达式中具有特殊含义的字符。 元字符 说明 ....匹配任意除了换行符(回车键)之外的单个字符 \d 匹配数字 \D 匹配非数字 \w 匹配字母、数字、下划线 \W 匹配非字母、数字、下划线 \s 匹配空格 \S 匹配非空格 \b 匹配单词边界 \B 匹配非单词边界...范围符 一个中括号就代表一个字符串,中括号的目的解视控制一个字符的范围。 中括号 说明 [abc] 查找一个括号之间的任何字符。...[A-Z] 查找一个任何从大写A到大写Z的字符。 [A-z] 查找一个字母(包含大小写和下划线)。 [[u4e00-u9fa5]] 查找一个汉字。 选择符 特殊符号:正则1|正则2。
在 JavaScript中,正则表达式也是对象 通常用来查找、替换那些符合正则表达式的文本,许多语言都支持正则表达式 正则表达式在 JavaScript中的使用场景: 例如验证表单:用户名表单只能输入英文字母...、数字或者下划线, 昵称输入框中可以输入中文(匹配) 比如用户名: /^[a-z0-9_-]{3,16}$/ 过滤掉页面内容中的一些敏感词(替换),或从字符串中获取我们想要的特定部分(提取)等 正则表达式是用于匹配字符串中字符组合的模式...判断是否有符合规则的字符串 1. test() 方法 用来查看正则表达式与指定的字符串是否匹配 定义正则表达式, 检测查找是否匹配 如果正则表达式与指定的字符串匹配 ,返回true,否则false //...匹配0~9之间的任一数字, 相当于[0-9] \D 匹配所有0~9以外的字符, 相当于 ^0-9] \w 匹配任意的字母、数字和下划线, 相当于[a-zA-Z0-9-__] \W 除所有字母、数字下划线以外的字符...修饰符 修饰符约束正则执行的某些细节行为,如是否区分大小写、是否支持多行匹配等 i 是单词 ignore 的缩写,正则匹配时字母不区分大小写 g 是单词 global 的缩写,匹配所有满足正则表达式的结果
\w匹配字母或数字或下划线或汉字等。...匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束...w+匹配一行的第一个单词(或整个字符串的第一个单词,具体匹配哪个意思得看选项设置) 字符类 要想查找数字,字母或数字,空白是很简单的,因为已经有了对应这些字符集合的元字符,但是如果你想匹配没有预定义元字符的字符集合...比如想查找除了数字以外,其它任意字符都行的情况,这时需要用到反义: 常用的反义代码 \W 匹配任意不是字母,数字,下划线,汉字的字符 \S 匹配任意不是空白符的字符 \D 匹配任意非数字的字符 \B 匹配不是单词开头或结束的位置...这是因为[^u]总要匹配一个字符,所以如果q是单词的最后一个字符的话,后面的[^u]将会匹配q后面的单词分隔符(可能是空格,或者是句号或其它的什么),后面的\w*\b将会匹配下一个单词,于是\b\w*q
快速高效的查找与分析字符串 进行有规律查找比对字符串,也叫:模式匹配 具有查找、比对、匹配、替换、插入、添加、删除等能力。 ...还用前面的例子,我们要求第一个字符不能是数字: ^[^0-9][0-9]$ 这个模式与”&5”、”g7”及”-2”是匹配的,但与”12”、”66”是不匹配的。...字符簇 描述 ^[a-zA-Z_]$ 所有的字母和下划线 ^[[:alpha:]]{3}$ 所有的3个字母的单词 ^a$ 字母a ^a{4}$ aaaa ^a{2,4}$ aa,aaa或aaaa ^a{...我们可以把模式扩展到更多的单词或数字: ^[a-zA-Z0-9_]{1,}$ //所有包含一个以上的字母、数字或下划线的字符串 ^[0-9]{1,}$ //所有的正数 ^\-{0,1}[0-9]{1...最后,字符”+”与 {1,}是相等的,表示”1个或多个前面的内容”,所以上面的4个例子可以写成: ^[a-zA-Z0-9_]+$ //所有包含一个以上的字母、数字或下划线的字符串 ^[0-9]+$ /
正则表达式里还有更多的元字符,比如 \s 匹配任意的空白符,包括空格,制表符(Tab),换行符,中文全角空格等。\w 匹配字母或数字或下划线或汉字等。...下面来看看更多的例子: \ba\w*\b匹配以字母a开头的单词——先是某个单词开始处(\b),然后是字母a,然后是任意数量的字母或数字(\w*),最后是单词结束处(\b)。...匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束 正则表达式引擎通常会提供一个...(或整个字符串的第一个单词,具体匹配哪个意思得看选项设置) 字符类 要想查找数字,字母或数字,空白是很简单的,因为已经有了对应这些字符集合的元字符,但是如果你想匹配没有预定义元字符的字符集合(比如元音字母...我们也可以轻松地指定一个字符范围,像[0-9]代表的含意与 \d 就是完全一致的:一位数字;同理[a-z0-9A-Z_]也完全等同于\w(如果只考虑英文的话)。 下面是一个更复杂的表达式:\(?
领取专属 10元无门槛券
手把手带您无忧上云