这个正则表达式应该工作:
String str = @"<a href="":$451$142"">some thing</a> "+
@" <a href="":$14$15"">some thing</a> "+
@" <a href="":$3$16"">some thing</a> "+
@" <a href="":$312$17"">some thing</a> ";
String newStr = Regex.Replace(str,@":\$\d+\$\d+", "#");
System.Console.WriteLine(str);
System.Console.WriteLine("\n\n" + newStr);
它产生:
<a href=":$451$142">some thing</a> <a href=":$14$15">some thing</a> <a href
=":$3$16">some thing</a> <a href=":$312$17">some thing</a>
<a href="#">some thing</a> <a href="#">some thing</a> <a href="#">some thin
g</a> <a href="#">some thing</a>
正则表达式::\$\d+\$\d+
将匹配任何以 a 开头:
,后跟 a的文本$
(the$
是正则表达式语言中的特殊字符,因此需要\
在前面加上一个额外的字符)。$
遗嘱后面需要跟着一个或多个数字(\d+
),然后再跟着另一个数字:
(\d+
)。请查看本教程以获取更多信息。
尽管在这种情况下正则表达式确实有帮助,但强烈建议您不要使用它们来解析语言。请使用HTML Agility Pack等专用框架来执行任何与 HTML 相关的流程。在这里查看一个类似于您似乎正在尝试做的示例。