正则表达式之我见—反义

反义:就是匹配不包含的字符。

代码/语法 说明
\W 匹配任意不是字母,数字,下划线,汉字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符

1.1 \W 匹配任意不是字母,数字,下划线,汉字的字符

\W除了字母,数字,下划线,汉字的字符都匹配到了。

1.2 \S 匹配任意不是空白符的字符

唯独我选中的空格没有匹配到。

1.3 \D 匹配任意非数字的字符

这次空格匹配到了,1没有匹配到,这就是\D。

1.4 \B 匹配不是单词开头或结束的位置

匹配不是a开头的。

匹配不是a结尾的。

1.5 [^x] 匹配除了x以外的任意字符

匹配除了a以外的

1.6 [^aeiou] 匹配除了aeiou这几个字母以外的任意字符

同上

时间: 2024-10-28 02:36:29

正则表达式之我见—反义的相关文章

Python字符串和正则表达式中的反斜杠('\')问题

在Python普通字符串中 在Python中,我们用'\'来转义某些普通字符,使其成为特殊字符,比如 In [1]: print('abc\ndef') # '\n'具有换行的作用 abc defg In [2]: print('abc\tdef') # '\t'具有制位符的作用 abc defg 我们还可以用'\'来转义特殊字符,使其成为普通字符,比如 In [3]: print('abc\\tdef') # 使'\'成为一个普通的字符,没有转义作用 abc\tdef In [4]: prin

Python基础要点:字符串和正则表达式中的反斜杠(‘\‘)问题详解

给大家整理的是关于Python字符串和正则表达式中的反斜杠('\')问题以及相关知识点,有需要的朋友们可以学习下. 在Python普通字符串中 在Python中,我们用'\'来转义某些普通字符,使其成为特殊字符,比如 1 In [1]: print('abc\ndef') # '\n'具有换行的作用 2 abc 3 defg 4 5 In [2]: print('abc\tdef') # '\t'具有制位符的作用 6 abc defg 我们还可以用'\'来转义特殊字符,使其成为普通字符,比如 1

正则表达式之我见——元字符

正则表达式语言由两种基本字符类型组成:原义(正常)文本字符和元字符.元字符使正则表达式具有处理能力.所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式. 元字符是一个或一组代替一个或多个字符的字符.听起来有点拗口,但举一个例子也许你就明白了:元字符*用来匹配0个或多个的前一字符:而元字符 . 用来匹配一个任意的一个字符. 表1.常用的元字符 代码 说明 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字

正则表达式之我见—后向引用

使用小括号指定一个子表达式后,匹配这个子表达式的文本(也就是此分组捕获的内容)可以在表达式或其它程序中作进一步的处理. 默认情况下,每个分组会自动拥有一个组号,规则是:从左向右,以分组的左括号为标志,第一个出现的分组的组号为1,第二个为2,以此类推. 后向引用用于重复搜索前面某个分组匹配的文本. 分类 代码/语法 说明 捕获 (exp) 匹配exp,并捕获文本到自动命名的组里 (?<name>exp) 匹配exp,并捕获文本到名称为name的组里,也可以写成(?'name'exp) (?:ex

JSONOBJ的反义符

JSONObject obj=new JSONObject(); obj.put("password", "123"); obj.put("test", "123222"); String a=obj.toString(); obj.put("params", a.substring(1,a.length()-1)); System.out.println(obj); {"password&quo

正则表达式之我见—注释

注释就是对代码的解释和说明. 目的是为了让别人和自己很容易看懂,一看就知道这段代码是做什么用的. 正确的程序注释一般包括序言性注释和功能性注释. 正则的注释语法:(?#comment),例如:1[0-2]\d(?#100-129). 一个扩展,忽略模式下的正则写法: (?<= # 断言要匹配的文本的前缀 <(\w+)> # 查找尖括号括起来的字母或数字(即HTML/XML标签) ) # 前缀结束 .* # 匹配任意文本 (?= # 断言要匹配的文本的后缀 <\/\1> # 查

正则表达式之我见—处理模式

名称 说明 IgnoreCase(忽略大小写) 匹配时不区分大小写. Multiline(多行模式) 更改^和$的含义,使它们分别在任意一行的行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配.(在此模式下,$的精确含意是:匹配\n之前的位置以及字符串结束前的位置.) Singleline(单行模式) 更改.的含义,使它与每一个字符匹配(包括换行符\n). IgnorePatternWhitespace(忽略空白) 忽略表达式中的非转义空白并启用由#标记的注释. ExplicitCapture

正则表达式之我见——限定符

限定符指定在输入中必须存在字符.组或字符类的多少个实例才能找到匹配项.下表列出了支持的限定符. 贪婪的限定符 惰性限定符 说明 * *? 匹配零次或多次. + +? 匹配一次或多次. ? ?? 匹配零次或一次. {n} {n}? 准确分配n次. {n,} {n,}? 至少匹配 n次. {n,m} {n,m}? 从n与m次. 数量 n 和 m 是整数常数. 这里的原则是:一般的字符后面追加限定符是尽可能多的匹配匹配项,限定符后面追加问号的是尽可能少的匹配匹配项. 下面来一一验证吧! 1.1 *尽可

python 正则表达式中反斜杠(\)的麻烦和陷阱

这里是一点小心得:由于下面两个原因,在正则表达式中使用反斜杠就会产生了一个双重转换的问题.(1).python自身处理字符串时,反斜杠是用于转义字符 (2).正则表达式也使用反斜杠来转义字符     要匹配字符串中1个反斜杠应该怎么写正则表达式?"\\",这样行吗?试试就知道了,re模块抛异常了,因为在正则表达式中,"\\"就是一个反斜杠,对于正则表达式解析器来说,是一个转义字符,但是后面啥也没有,自然就报错了,"\\\"三个肯定是不行的,试试四