我需要使用CLASS CLASSIFY获取所有SPAN标记。在其中一种情况下,我正在使用的RegEx正在跳过第一个SPAN标记。
正则表达式
<span [^>]*class=\"classify\"(.*?)</span>
C#代码
Regex.Matches(content, "<span [^>]*class=\"classify\"(.*?)</span>", RegexOptions.Multiline)
内容:
<span categoryid="110" categorytext="(Sup ed (Inl))" class="classify" classifyid="3395349" quoteid="" quotetext="" selectedclassify="true" style="font-weight: bold; background-color: #ffa500">
<u>Objective/reason for interaction</u>
<br /> wtwt
<br />
<br /> <u>Summary</u><br /> As -16/08/15</span>
<br />
<br />
<u>Actions</u>
<br /> N
<br />
<br />
<u>Outcomes/reportables</u>
<br />
<span categorytext="(Nofrf of J Ced)" class="classify" quoteid="" quotetext="" selectedclassify="false" style="categoryid="13416"">1 full </span>
<br /> A Mag
<br />
<br />
<u>K</u>
<br /> As ab
<br />
链接到.Net RegEx测试人员:
请告知建议,我在RegEx中缺少什么。
答案 0 :(得分:1)
这是因为默认情况下点与新行不匹配。您可以改为使用[\ s \ S]:
<span [^>]*class=\"classify\"([\s\S]*?)</span>
或者您可以使用原始模式并在RegexOptions中设置Singleline option。