正则表达式中 (?=.*[a-z]) 什么意思?
意思是断言,只匹配一个位置。
例如:
想匹配一个“人”字,但是只想匹配中国人的人字,不想匹配法国人的人,就可以用一下表达式
(?=中国)人
所以,楼主的表达式与其他通配符连用才能起到效果。
(?=.*[a-z])\d+
这个就表示 匹配以“任意字符连着一个小写字母”开头的数字,只匹配数字。(?<=exp)这个是放后面的。
扩展资料:
正则表达式的特点是:
1、灵活性、逻辑性和功能性非常强;
2、可以迅速地用极简单的方式达到字符串的复杂控制。
3、对于刚接触的人来说,比较晦涩难懂。
由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。
意思是断言,只匹配一个位置。
例如:
想匹配一个“人”字,但是只想匹配中国人的人字,不想匹配法国人的人,就可以用一下表达式
(?=中国)人
所以,楼主的表达式与其他通配符连用才能起到效果。
(?=.*[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我是中国人
比如,你想匹配一个“人”字,但是你只想匹配中国人的人字,不想匹配法国人的人
就可以用一下表达式
(?=中国)人
所以,楼主的表达式与其他通配符连用才能起到效果。
(?=.*[a-z])\d+
这个就表示 匹配以“任意字符连着一个小写字母”开头的数字,只匹配数字。
(?<=exp)这个是放后面的。
语言表述能力不行啊,不知道楼主看没看懂,有什么疑问请继续追问
这篇文章的作者是:deerchao
文章链接:正则表达式30分钟入门教程
/*===============分 割 线=================*/
还有一篇深度好文:
作者:BattleHeart
文章链接:浅析正则表达式—(原理篇)
2016-06-13