正则表达式中 (?=.*[a-z]) 什么意思?

如题所述

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

例如:

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

(?=中国)人

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

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

这个就表示 匹配以“任意字符连着一个小写字母”开头的数字,只匹配数字。(?<=exp)这个是放后面的。

扩展资料:

正则表达式的特点是:

1、灵活性、逻辑性和功能性非常强;

2、可以迅速地用极简单的方式达到字符串的复杂控制。

3、对于刚接触的人来说,比较晦涩难懂。

由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-07-06

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

例如:

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

(?=中国)人

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

(?=.*[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我是中国人

本回答被网友采纳
第2个回答  推荐于2017-04-25
这个叫断言,只匹配一个位置
比如,你想匹配一个“人”字,但是你只想匹配中国人的人字,不想匹配法国人的人
就可以用一下表达式
(?=中国)人
所以,楼主的表达式与其他通配符连用才能起到效果。
(?=.*[a-z])\d+
这个就表示 匹配以“任意字符连着一个小写字母”开头的数字,只匹配数字。

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

语言表述能力不行啊,不知道楼主看没看懂,有什么疑问请继续追问本回答被提问者和网友采纳
第3个回答  2019-09-22

这篇文章的作者是:deerchao

文章链接:正则表达式30分钟入门教程


/*===============分         割        线=================*/


还有一篇深度好文:

作者:BattleHeart

文章链接:浅析正则表达式—(原理篇)

第4个回答  2016-06-13
更好的解释,搜cllgeek

正则表达式中 (?=.*[a-z]) 什么意思?
意思是断言,只匹配一个位置。例如:想匹配一个“人”字,但是只想匹配中国人的人字,不想匹配法国人的人,就可以用一下表达式 (?=中国)人 所以,楼主的表达式与其他通配符连用才能起到效果。(?=.*[a-z])\\d+ 这个就表示 匹配以“任意字符连着一个小写字母”开头的数字,只匹配数字。(?<=exp)...

正则表达式中 (?=.*[a-z]) 什么意思?
正则表达式是计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成"regex"...

正则(?=.*[a-z])是什么意思?
你的 (?<=.*[a-z]). 中的 .*[a-z] ,属于正则写法,能匹配到不固定长度的字符,所以不支持,会报错的。官网解释,详见python中的re re --- 正则表达式操作 — Python 3.8.1 文档 (?<=…)匹配字符串的当前位置,它的前面匹配 … 的内容到当前位置。这叫:dfn:positive lookbehind asser...

正则表达式 ^(?=.*?[A-Z])(?=.*?[^A-Za-z0-9]).{6,12}$ 这个是什么意思...
(?=xxx)是零宽断言,表示后面的字符串必须符合xxx这个正则表达式,但是不消耗字符串,实际匹配字符串的正则是.{6,12}即6到12位字符 (?=.*?[A-Z])表示后面必须符号.*?[A-Z]这个 ,即必须有大写字母 整个正则表达式表示6到12位字符,必须有大写字母和不是字母数字的字符 ...

怎样用正则表达式验证密码?
?=.*[a-z]):正向预查,表示字符串中必须包含至少一个小写字母 (?=.*[A-Z]):正向预查,表示字符串中必须包含至少一个大写字母 .{8,20}:匹配任意字符,长度范围为8到20个字符 :匹配字符串的结束位置 这个正则表达式可以用来验证密码是否符合要求,如果符合则返回匹配成功,否则返回匹配失败。

正则表达式(?)是什么意思?
意思是断言,只匹配一个位置。例如:想匹配一个“人”字,但是只想匹配中国人的人字,不想匹配法国人的人,就可以用一下表达式 (?=中国)人 所以,楼主的表达式与其他通配符连用才能起到效果。(?=.*[a-z])\\d+ 这个就表示 匹配以“任意字符连着一个小写字母”开头的数字,只匹配数字。(?<=exp)...

(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z]).{6,10} 帮我解释一下这个正则表达式...
(?=.*[0-9])任意字符串后有一数字 (?=.*[a-z])任意字符串后有一小写字母 (?=.*[A-Z])任意字符串后有一大写字母 .{6,10} 6-10位任意字符 整个正则表示6-10位字符,必须同时包含数字,小写字母,大写字母。

8-20位字符,包含大小写字母,数字,特殊符号其中的两种大小字母加数字加特...
正则表达式?\/^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[\\W_])[A-Za-z\\d\\W_]{8,20}$\/ 该正则表达式使用了正则表达式的零宽度正预测先行断言(positive lookahead assertion)。这个断言用来判断是否包含了至少一种特定的字符类型。每个断言包含了一个正则表达式,在这个正则表达式中,(...

这个正则表达式是什么意思?^(?=[1-9])(?=.[A-Z]).{10,12}$
我来回答一下,这个正则表达式字面上的意思的验证必须由一个数字加一个大写字母开头的10-12长度的字符串。^表示开始,()表示子表达式,^(?=[1-9])(?=.[A-Z])表示开始后面必须接一个数字(范围1-9),数字后面必须接一个大写字母(范围【A-Z】),.表示任意字符,{}表示长度限制,$表示...

python正则表达式有大佬能给我讲解一下吗 pattern='^(?=.*[a-z...
三个圆括号分别匹配的是 以任意个字符加一个小写字母的串 以任意个字符加一个大写字母的串 以任意个字符加一个数字的串。不明白的是,如果是这三者取其一的话,为什么没有选择符|

相似回答