如何对此文本进行正则表达式替换

本文关键字:正则表达式 替换 文本 | 更新日期: 2023-09-27 18:32:54

如何对此文本进行正则表达式替换:

    <span style='"text-decoration: underline;'">Request Block Host</span> to
    `<u>Request Block Host</u>`

到目前为止,我有这个,假设"text"是具有上述标签的完整字符串。

   text = Regex.Replace(text, "<span style='"text-decoration: underline;'">.*?</span>", delegate(Match mContent)
        {
            return mContent.Value.Replace("<span style='"text-decoration: underline;'">", "<u>").Replace("</span>", "</u>");
        }, RegexOptions.IgnoreCase);      

如何对此文本进行正则表达式替换

这应该可以解决问题:

text = Regex.Replace(text, 
    "<span style='"text-decoration: underline;'">(.*?)</span>", 
    "<u>$1</u>",
    RegexOptions.IgnoreCase); // <u>Request Block Host</u>

这将匹配文字<span style="text-decoration: underline;">,后跟零个或多个任何字符,在第 1 组中捕获,后跟文字</span>。它将用 <u> 替换匹配的文本,后跟组 1 的内容,后跟文字</u>

var _string = "<span style='"text-decoration: underline;'">Request Block Host</span>";
var text = Regex.Replace(_string, "<.+>(.*)</.+>", "<u>$1</u>");

:D