【发布时间】:2013-07-30 15:42:30
【问题描述】:
我有一个在 Javascript 中运行良好的正则表达式
var dbId = "Test/Detail[@Name='ok'][@Details='ok2']/Submit";
dbId.replace(/(?:\[@Name='.+?'\]|\[@Details='.+?'\])/g,"");
但是当我在 C# 中尝试它时它不起作用
C#
Regex.Replace(dbId, @"(?:\[@Name='.+?'\]|\[@Details='.+?'\])", String.Empty);
请帮忙
【问题讨论】:
-
为什么在C#代码中你的字符串外有@,这个在方法文档中只是偶尔使用,原因就不解释了。它可能会导致您的问题。 msdn.microsoft.com/en-us/library/e7f5w83z.aspx
-
帮助我们为您提供帮助。什么不工作?您是否收到编译错误?行为不对?解释问题。提供错误消息。
-
@Robadob,
@创建一个字符串文字,这意味着引号内的任何内容都是有效字符。它可以节省您转义字符。
标签: c# javascript .net regex