正则表达式(?)是什么意思?

如题所述

意思是断言,只匹配一个位置。

例如:

想匹配一个“人”字,但是只想匹配中国人的人字,不想匹配法国人的人,就可以用一下表达式

(?=中国)人

所以,楼主的表达式与其他通配符连用才能起到效果。

(?=.*[a-z])\d+

这个就表示 匹配以“任意字符连着一个小写字母”开头的数字,只匹配数字。

(?<=exp)这个是放后面的。

扩展资料:

正则表达式的其他模式修饰符的用法

1.(?=a):

console.log("我是中国人".replace(/我是(?=中国)/, "rr"))

打印出:rr中国人    (匹配的是中国前面的'我是')

2.(?!a):

console.log("我是中国人".replace(/(?!中国)/, "rr"))

打印出:rr我是中国人  

3.(?:a):

console.log("我是中国人".replace(/(?:中国)/, "rr"))

打印出:我是rr人

4..(?<=a):

console.log("我是中国人".replace(/(?<=中国)人/, "rr"))

打印出:我是中国rr

5.(?<!a):

console.log("我是中国人".replace(/(?<!中国)/, "rr"))

打印出:rr我是中国人

温馨提示:答案为网友推荐,仅供参考