C# 匹配除html标记内容外的所有文本

C# 匹配除html标记内容外的所有文本,c#,regex,C#,Regex,我想在下面的示例中匹配html标记div之外的文本 我应该使用什么正则表达式模式?谢谢 Match me 1你好,世界!匹配我2。尝试使用此模式: (^([\s\S]*?)(?=<div>))|(((?<=<\/div>))([\s\S]*?)(?=<div>))|((?<=<\/div>)[\s\S]*) 默认情况下,正则表达式是贪婪的,这意味着它将尽可能匹配。因此,如果您使用上述模式,它将选择所有文本直到第三个,但通过添加非贪婪

我想在下面的示例中匹配html标记div之外的文本 我应该使用什么正则表达式模式?谢谢


Match me 1你好,世界!匹配我2。
尝试使用此模式:

(^([\s\S]*?)(?=<div>))|(((?<=<\/div>))([\s\S]*?)(?=<div>))|((?<=<\/div>)[\s\S]*)

默认情况下,正则表达式是贪婪的,这意味着它将尽可能匹配。因此,如果您使用上述模式,它将选择所有文本直到第三个
,但通过添加非贪婪量词
使正则表达式仅选择所有文本直到第一个

,您根本不应该使用正则表达式。顺便说一句:这不是格式良好的html。如果那不是嵌套的
,第二个应该是
“匹配我1”和“匹配我2”也将位于标记(父标记)内。是的,它不是格式良好的HTML,我有一个自由文本,我想处理所有不在标记内的文本
Match me1 <div><div>Hello World!</div> Match me 2 <div>Hello World!</div> Match me 3.