Skip to main content
 首页 » 编程设计

c#之尽管在 Javascript 中工作,但正则表达式在 C# 中不工作

2024年01月13日37lhb25

我有一个在 Javascript 中运行良好的正则表达式

var dbId = "Test/Detail[@Name='ok'][@Details='ok2']/Submit"; 
dbId.replace(/(?:\[@Name='.+?'\]|\[@Details='.+?'\])/g,""); 

但是当我在 C# 中尝试它时它不起作用

C#

Regex.Replace(dbId, @"(?:\[@Name='.+?'\]|\[@Details='.+?'\])", String.Empty); 

请帮忙

请您参考如下方法:

字符串是不可变的,因此替换不是就地完成的。

dbId = Regex.Replace(dbId, @"(?:\[@Name='.+?'\]|\[@Details='.+?'\])", String.Empty); 

将结果赋值回dbId


结果:测试/详细/提交