繁体   English   中英

C#Regex在特定正则表达式匹配后更改一些文本

[英]C#Regex change some text after specific regex match

我有这个 :

string text = "My parameter @1, and my other parameter @10"

如何将@ 1替换为某些值?

当我做text= text.replace("@1", "value");

我有text = "My parameter value, and my other parameter value0"

不好的是@ 10已更改。

我有使用正则表达式来查找要修改的正确值的想法:

string pattern = "@1[^0-9]";

Regex rgx = new Regex(pattern);
string result = rgx.Replace(text, "value");

这次我有“我的参数值和我的其他参数@ 10”这次,昏迷','被删除了。

那么如何正确替换@ 1?

在正则表达式中使用\\b即可实现所需的功能:

input = Regex.Replace(input, @"@1\b", "sometext");
                                 ^^  here

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM