需要使用正则表达式从字符串中删除<a href="xx"> Name </a>标记

Coo*_*der 4 c# regex asp.net

需要正则表达式从以下url中删除a标记<a href="http://example.com">Name</a>以仅输出字符串"Name".我正在使用C#.net.

任何帮助表示赞赏

rid*_*ner 29

这样做会很好:

str = Regex.Replace(str, @"<a\b[^>]+>([^<]*(?:(?!</a)<[^<]*)*)</a>", "$1");
Run Code Online (Sandbox Code Playgroud)


Leo*_*ons 0

你可以尝试使用这个。它尚未在所有条件下进行测试,但它会从您的示例中返回正确的值。

\<[^\>]+\>(.[^\<]+)</[^\>]+\>
Run Code Online (Sandbox Code Playgroud)

这是仅适用于标签的版本。

\<a\s[^\>]+\>(.[^\<]+)</a\>
Run Code Online (Sandbox Code Playgroud)

我在以下 HTML 上对其进行了测试,它仅返回名称

<a href="http://xx.com">Name</a><label>This is a label</label> <a href="http://xx.com">Value</a> 
Run Code Online (Sandbox Code Playgroud)