最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
正则表达式中.+?与.?的区别
时间:2026-09-28 21:20:01 编辑:袖梨 来源:一聚教程网
. 匹配除“rn”之外的任何单个字符。要匹配包括“rn”在内的任何字符,请使用像“[sS]”的模式。
加问号则表示为懒惰模式
.+? 表示匹配任意字符一个或则多个.*? 表示匹配任意字符0个或多个在具体使用时.+?可能跟好用些,看个人喜好
既然写了,顺带将正则的知识补全吧;;

"b" :不会消耗任何字符只匹配一个位置,常用于匹配单词边界 如 我想从字符串中"This is Regex"匹配单独的单词 "is" 正则就要写成 "bisb" b 不会匹配is 两边的字符,但它会识别is 两边是否为单词的边界 "d": 匹配数字, "w":匹配字母,数字,下划线. "s":匹配空格 ".":匹配除了换行符(rn)以外的任何字符 这个算是"w"的加强版了"w"不能匹配 空格 如果把字符串加上空格用"w"就受限了, 用 "."是如何匹配字符"a23 4 5 B C D__TTz" 正则:".+" "[abc]": 字符组 匹配包含括号内元素的字符
匹配能力 ( . > w > d )
反义:写法很简单改成大写就行了,这也很好理解;
"W" 匹配任意不是字母,数字,下划线 的字符 "S" 匹配任意不是空白符的字符 "D" 匹配任意非数字的字符 "B" 匹配不是单词开头或结束的位置 "[^abc]" 匹配除了abc以外的任意字符"{n}" 重复n次例如从"aaaaaaaa" 匹配字符串的a 并重复3次 正则: “a{3}” 结果就是取到3个a字符 “aaa”;
“{n,m}” 重复n到m次
例如正则 “a{3,4}” 将a重复匹配3次或者4次 所以供匹配的字符可以是三个"aaa"也可以是四个"aaaa" 正则都可以匹配到
"{n,}" 重复n次或更多次与{n,m}不同之处就在于匹配的次数将没有上限,但至少要重复n次 如 正则"a{3,}" a至少要重复3次
"??" 重复0次或1次,但尽可能少重复
如 “aaacb” 正则 “a.??b” 只会取到最后的三个字符"acb"
“{n,m}?” 重复n到m次,但尽可能少重复
如 "aaaaaa" 正则 "a{0,m}" 因为最少是0次所以取到结果为空“{n,}?” 重复n次以上,但尽可能少重复
如 "aaaaa" 正则 "a{1,}" 最少是1次所以取到结果为 "a"==>两者相互等价
到此这篇关于正则表达式中.+?与.*?的区别的文章就介绍到这了,更多相关正则表达式 .+?与.*?内容请搜索一聚教程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持一聚教程网!
相关文章
- JavaScript正则表达式实现注册信息校验功能 09-28
- 正则表达式中.+?与.?的区别 09-28
- 一看就懂的正则表达式教程 09-28
- Snort中pcre和正则表达式的使用详解 09-28
- 在nest.js中通过正则表达式正确设置验证的方法 09-28
- 正则表达式之字符串模式匹配实例详解 09-28