使用C#中的RegEx来获取具有特定类名的所有SPAN标记

时间:2017-05-11 00:23:32

标签: c# .net regex

我需要使用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 />  &nbsp;
<br />  <u>Summary</u><br />  As  -16/08/15</span>
<br />  &nbsp;
<br />  
<u>Actions</u>
<br />  N
<br />  &nbsp;
<br />  
<u>Outcomes/reportables</u>
<br />  
<span categorytext="(Nofrf of J Ced)" class="classify" quoteid="" quotetext="" selectedclassify="false" style="categoryid=&quot;13416&quot;">1 full </span>
<br />  A Mag
<br />  &nbsp;
<br />  
<u>K</u>
<br />  As ab
<br />  

链接到.Net RegEx测试人员:

Sample

请告知建议,我在RegEx中缺少什么。

1 个答案:

答案 0 :(得分:1)

这是因为默认情况下点与新行不匹配。您可以改为使用[\ s \ S]:

<span [^>]*class=\"classify\"([\s\S]*?)</span>

或者您可以使用原始模式并在RegexOptions中设置Singleline option

Regex Tester link

相关问题