正则表达式 .*+ 匹配啥?

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?

以上是关于正则表达式 .*+ 匹配啥?的主要内容,如果未能解决你的问题,请参考以下文章

正则表达式以啥结尾

正则表达式[!^0-9] 是啥意思?

linux 中 ^[^abc] 正则表达式啥意思

正则表达式/()$/是啥意思啊

Page: 匹配正则表达式 ".*" 是啥意思?

jmeter中的正则表达式是啥意思