当前位置:编程学习 > C#/ASP.NET >>

用正则表达式,对指定字符串分段,谢谢。

用正则表达式,对指定字符串分段,谢谢。

string text ="<div class="base">  批准单位:AAA市人民易做图<br>组织单位:BBB省行业协会<br>        CCC有限公司<br>支持单位:DDD合作协会   EEE研究院       <br>协办单位:FFF有限公司<br>承办单位:GGG行业协会      HHH有限公司<br /></div>";


要分离成为:

批准单位:    AAA市人民易做图<br>
组织单位:    BBB省行业协会<br>        CCC有限公司<br>
支持单位:    DDD合作协会   EEE研究院       <br>
协办单位:    FFF有限公司<br>
承办单位:    GGG行业协会      HHH有限公司<br />

下面正则可以匹配开始,但是如何限定到结束位置?

string ptr = "(批准|组织|主办|支持|承办|协办)单位:";


谢谢~~~ --------------------编程问答--------------------
		string s = @"<div class=""base"">  批准单位:AAA市人民易做图<br>组织单位:BBB省行业协会<br>        CCC有限公司<br>支持单位:DDD合作协会   EEE研究院       <br>协办单位:FFF有限公司<br>承办单位:GGG行业协会      HHH有限公司<br /></div>";
MatchCollection matches = Regex.Matches(s, @"\w+单位:.+?<br>");
foreach (Match match in matches)
Console.WriteLine(match.Value);
--------------------编程问答-------------------- (批准|组织|主办|支持|承办|协办)单位:.+?<br>

这样也是可以的

<br>最好改变成<br( /)?>,这样就可以匹配到<br /> --------------------编程问答-------------------- 更正一下:
		string s = @"<div class=""base"">  批准单位:AAA市人民易做图<br>组织单位:BBB省行业协会<br>        CCC有限公司<br>支持单位:DDD合作协会   EEE研究院       <br>协办单位:FFF有限公司<br>承办单位:GGG行业协会      HHH有限公司<br /></div>";
MatchCollection matches = Regex.Matches(s, @"\w+单位:.+?(?=\w+单位:|</div>)");
foreach (Match match in matches)
Console.WriteLine(match.Value);
--------------------编程问答-------------------- (?is)(批准|组织|主办|支持|承办|协办)单位:.*?<br|br />


string source = @"<div class=""base"">  批准单位:AAA市人民易做图<br>组织单位:BBB省行业协会<br>        CCC有限公司<br>支持单位:DDD合作协会   EEE研究院       <br>协办单位:FFF有限公司<br>承办单位:GGG行业协会      HHH有限公司<br /></div>";
MatchCollection matches = Regex.Matches(source , @"(?is)(批准|组织|主办|支持|承办|协办)单位:.*?<br|br />");
foreach (Match match in matches)
    Console.WriteLine(match.Value);
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,