正则表达式.*(.)(.*\\1).是什么意思?

 我来答
东门士恩储子
2019-01-24 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.2万
采纳率:34%
帮助的人:1195万
展开全部
.*(.)(.*\\1).
第1个
.
代表任意字符,后面的
*
代表
前面的任意字符有0个或多个
第2个
.
也代表任意字符,但它被括号括起来了,括号代表它被捕获了,相当于被复制了,还没被粘贴
第3个
.
也代表任意字符,后面的
*
代表
前面的任意字符有0个或多个
\\第1个\代表转译符,\这个符号不能直接出现在表达式里,必须被\转译符后才能变成一个普通的字符\,也就是说第1个\是用来把第2个\变成一个普通字符\
1就是1,没什么好说的
最后1个
.
也是代表任意字符,它后面没跟着
*
,所以代表只有1个任意字符
顺便说下,最短能被匹配的结果
1\11
1随便换成别的任意字符也行
平寄竹焦罗
2019-09-06 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:26%
帮助的人:948万
展开全部
*?
是惰性匹配,就是匹配尽可能少的次数。
.*?的意思是匹配任意字符,尽可能少的次数。
比如:abaaaaabb

a.*b去匹配,会匹配到abaaaaabb
全部,应为正则默认贪婪匹配,找到第一个b之后,发现后面还有b,会一直匹配下去。
所以
可以使用贪婪匹配,a.*?b
这样的话,
只会匹配尽可能少的次数
就会匹配到
ab
还有问题hi我。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式