c# Regex匹配标签和结束前的文本
本文关键字:结束 文本 标签 Regex | 更新日期: 2023-09-27 18:15:21
我需要提取标签和它们之间的文本。示例文本
<SampleTag1>Text 'r'n More < Text < <'SampleTag1>
我想得到:
- Group1: SampleTag1
- Group2: Text 'r'n More <文本&>
现在我有:
"<('w+)>([^</]*)"
但是I't只返回:
- Group1: SampleTag1
- Text 'r'n更多
由于这不是有效的XML,我猜regex解决方案可能在您的情况下有效。
<(?<tag>'w+)>(?<text>.*?)</'k{tag}>
演示我使用了一个惰性限定符(.*?
)来匹配尽可能少的字符,但由于关闭标记是必需的,因此它必须匹配标记内的文本才能成功匹配。如果您需要断行支持,请使用RegexOptions.Singleline
。如果你可以嵌套标签,这个表达式将不起作用。
(如果需要,将</
替换为<''
)