我需要得到一个只包含一对已定义标签之间的文本的字符串,以及一个由包含标签的文本组成的字符串。由于文本位于 HTML<p>
标记中,因此<和>被解释为<
和>
(据我所知,这使得无法使用像 HTML Agility Pack 这样的解析器)
所以输入字符串看起来像这样:
Text outside of tags
<internal> First occurance of text inside of tags </internal>
More text outside of tags
<internal> Second occurance </internal>
我现在正在使用以下代码,但它只出现第一次而不是第二次:
Regex regex = new Regex(@"(<internal>(.*?)</internal>)", RegexOptions.Singleline);
MatchCollection matches = regex.Matches(inputString);
foreach (Match match in matches)
{
string outerMatch = match.Groups[1].Value;
string innerMatch = match.Groups[2].Value;
}