使用regex用制表符匹配不同行的两个字符串

本文关键字:字符串 两个 regex 制表符 使用 | 更新日期: 2023-09-27 18:15:35

我有以下两个字符串,并希望在它们发生时进行搜索,我正在挣扎,因为它们在我使用的HTML文件中的标签上位于不同的行上。

<span class="price">$17.95</span> 


    <span class="supersaver">

这是我到目前为止所尝试的,价格的价值可以改变,我尝试过只使用's+本身,也使用'n+'t+等组合。

MatchCollection m1 = Regex.Matches(file, @"<span class=""price"">[$]'d+[.]'d+</span>'n+'t+<span class=""supersaver"">",
                    RegexOptions.Singleline);

使用regex用制表符匹配不同行的两个字符串

试试这个:

MatchCollection m1 = Regex.Matches(file, @"<span class=price>[$]'d+[.]'d+</span>['s'n't.]+<span class=supersaver>",
                RegexOptions.Singleline);

你的解决方案必须有一个或多个空格,后面跟着制表符,没有行,上面的正则表达式应该匹配它们中的任何一个

这里可能缺少一些引号。如果你打算使用正则表达式,也许一个更通用的可能会更好。

MatchCollection m1 = Regex.Matches(file, @"<span's+class's*='s*""price""'s*>'$'d*'.'d*</span's*>'s*<span's+class's*='s*""supersaver""'s*>", RegexOptions.Singleline);