正则表达式 .*+ 匹配啥?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式 .*+ 匹配啥?相关的知识,希望对你有一定的参考价值。
比如说 a.*+b 匹配什么
这个问题我没问好
我知道正则表达式在进行数量匹配时有,+,*,?
我想知道在这些匹配符后面再加一个+号是个什么匹配规则
我知道为什么a.*+b是错误的匹配,因为.*+已经匹配到字符末尾了,没有字符会和b匹配了。
使用:\\+
其中”\\“是转义字符,因为+是正则表示式中的特殊符号,所以需要使用”\\“进行转义。
特殊字符
1、+
匹配前面的子表达式一次或多次。要匹配 + 字符,使用 \\+。
2、\\
将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, 'n' 匹配字符 'n'。'\\n' 匹配换行符。序列 '\\\\' 匹配 "\\",而 '\\(' 则匹配 "("。
3、|
指明两项之间的一个选择。要匹配 |,使用 \\|。
扩展资料
定位符
1、^
匹配输入字符串开始的位置。如果设置了 RegExp 对象的 Multiline 属性,^ 还会与 \\n 或 \\r 之后的位置匹配。
2、$
匹配输入字符串结尾的位置。如果设置了 RegExp 对象的 Multiline 属性,$ 还会与 \\n 或 \\r 之前的位置匹配。
3、\\b
匹配一个单词边界,即字与空格间的位置。
4、\\B
非单词边界匹配。
参考技术A 要写成 a.*b,.*代表匹配除换行符以外的任意字符任意次,可以是0次。.代表除换行符以外的任意字符,*代表任意次,相当于0,或者 a.+b,.+代表匹配除换行符以外的任意字符一次以上,可以是1次。.代表除换行符以外的任意字符,+代表1次以上,相当于1, 参考技术B a.*+b如果是错误的匹配,说明使用的语言或者工具不支持这种语法的固化分组。你说的.*+匹配到字符末尾了,没有字符与b匹配,这是失败的匹配,不是错误的匹配。错误和失败是不同的,错误是语法错误,说明正则语法不对,失败是说正则语法没问题,只不过源字符串没有匹配成功。 参考技术C 匹配所有的,必须要有的
a.*+b 报错 SyntaxError: Invalid regular expression: /a.*+b/: Nothing to repeat 参考技术D 这是固化分组本回答被提问者采纳
js里面的正则\d+和\d*有啥区别?
区别只有下面这一点:
匹配的内容不同:
\\d+:一个或多个数字。
\\d*:0个或多个数字。
正则表达式:
一个描述字符规则的对象。可以用来检查一个字符串是否含有某个字符,将匹配的字符做替换或者从某个字符串中取出某个条件的子串等。
使用正则的原因:
前端往往有大量的表单数据校验工作,采用正则表达式会使得数据校验的工作量大大减轻。
扩展资料:
正则的创建方式:
1、构造函数方式
var reg1 = new RegExp("a");
var str = "adassdfsd";
console.log(str.match(reg1))
2、字面量方式,古老的perl语言风格
var reg2 = /a/;
console.log(str2.match(reg2));
参考技术A 我来给你解释吧\d 表示匹配的是数字
+ 表示重复一次或者多次
* 表示重复零次或者多次追问
Ok
我还想问个
贴
本回答被提问者采纳 参考技术B \d+:表示1个或多个数字\d*:表示0个或多个数字追问
为什么我写\d+ 打出来的0为true?
以上是关于正则表达式 .*+ 匹配啥?的主要内容,如果未能解决你的问题,请参考以下文章