为了账号安全,请及时绑定邮箱和手机立即绑定

帮我看看这个正则表达式

/ 猿问

帮我看看这个正则表达式

哔哔one 2018-11-14 10:21:04

[^&;]+(?:&\w+;[^&;]*)这个正则表达式具体什么意思啊,请大家帮帮忙,谢谢

.NET技术正则表达式

问题补充: 感谢大家的问答,不过我还是想知道括号中的?:什么意思,有人知道吗?


查看完整描述

2 回答

?
慕标5265247

[^&;]+(?:&\w+;[^&;]*)分析如下:

[^&;]+ 表示必须是以非&和非;的字符作为开始,数目1~n

(?:&\w+;[^&;]*) 中的(?:)表示这是一个非捕捉组,即Match.Groups中不会有该组的信息

&\w+;[^&;]* 表示由&开头加\w(必须有)再加;的形式,因为后面有[^&;]*,所以这个组的结尾要么不是;要么只有一个;

当然这个组中也只会有一个;

最后这里分析的字符串并不仅限于整个字符串,也可以是字符串的一个子串,因为没有限定^开始符和$终止符

如:d  dd3&as;sss;;;dd;;ff3ddd&afdsf;&a;3;3;

(d  dd3&as;sss)
(ff3ddd&afdsf;)


查看完整回答
反对 回复 2018-11-18
?
守着星空守着你

以多个非&或; 开头(至少一个),后续 :&字符串(字符\w);,以多个非&或; 结尾(可为0个)。

“……(?:&……”里的“?”实在让人费解啊,我只能做忽略理解了。我对正则一知半解,只能读到这程度。


查看完整回答
反对 回复 2018-11-18

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信