正则表达式href\s*=\s*(?:\(?1[^\]*)\

具体表明href\s*=\s*(?:\"(?<1>[^\"]*)\"|(?<1>\\S+)) 正则

答复:

取href的链接的

href是正常的href字符
\s暗示一个空格,*暗示1个可能多个匹配,当前的意思是一个可能多个空格
=是正常的字符
?<1>在这里应该是定名捕捉组,我不知道你这个正则是哪个门户的,但应该不是js和c#的,呵
\\S+,\\前面一个暗示转义,这个的意思是\后头带一个S,而S可以是多个,同样,\"也是转义,因为"和\都是正则的元字符
[^\"],在方括号中的^,假如我没记错的话,应该是不包括的意思吧,就是不不含"

差不多了吧,不必然全部正确,你应该去相识一下正则的元正符再来看

*是指0可能多个 href= 和 href =http://enenba.com/都匹配

(?<name>exp)   匹配exp,并捕捉文本到名称为name的组里,也可以写成(?'name'exp)
(?:exp)  匹配exp,不捕捉匹配的文本,也不给此分组分派组号

\"(?<1>[^\"]*)\" 匹配的 "任意字符串" 只要引号内不含^"就可以

尚有一个浸染就是把匹配的引号内的字串放在group 1里


(?<1>\\S+)这里大概是(?<1>\S+)
匹配任意非空字串,并放入 group 1里

因此整个表达式应该是匹配一个
href属性,并把属性值放入 group 1中

这样可以在匹配后直接利用该属性值

上一篇: 一个正则表达式 匹配以“abc”开头后头不能包括“x”、“y”、“z”字符   |   下一篇:收罗侠正文提取道理调查» 标签:

分享到: 更多

相关日志:

【转】如何写出高效率的正则表达式

PHP正则匹配6到16位字符构成,只可有数字、字母、下划线

【转】EditPlus正则表达式删除文档多余空行

php收罗链接优秀正则

php收罗网站的title部门

用正则奈何得到方针字符串中不在超链接中的所需字符串

php正则,匹配.php和.html和.asp末了的文件

【转】PHP Simple HTML DOM理会器利用入门

editplus 将文本换行替换为<p>标签

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/7892.html