试图理解.net正则表达式
本文关键字:net 正则表达式 | 更新日期: 2023-09-27 18:08:37
我读了很多关于。net正则表达式的书,我开发了一个正则表达式,我不能理解。
(src|href)="'w+|('w+/)+
我读这个正则表达式的方式:
- 完全匹配"src"或"href"
- 后接="
- 后跟匹配1个或多个单词字符([a-zA-Z0-9_])或一个或多个(后跟/的一个或多个单词字符)
这意味着匹配类似'src="Folder ", 'src="Folder/", 'href="Folder/SubFolder/"等。
输入:& lt; !DOCTYPE html>
& lt; html xmlns ="http://www.w3.org/1999/xhtml"祝辞
& lt; head>
使用这个正则表达式,对于这个输入,有一个匹配。
org/1999/
谁能解释一下这个?Src或href没有在整个字符串中引用,怎么可能有任何匹配?
这里发生的是将正则表达式分隔为两个完全独立的条件。即选择(src|href)="'w+
或('w+/)+
,其中第二比特是匹配的:
org/1999/
在您的情况下,您可能需要将最后一部分放在括号中,以明确|
所指的替代究竟是什么:
(src|href)="('w+|('w+/)+)
顺便说一下,我使用Expresso来帮助解决这个问题。