Skip to main content
 首页 » 编程设计

c#之正则表达式搜索和替换,其中替换是搜索词的模组

2024年02月03日29itcoder

我很难找到解决这个问题的方法,我很确定正则表达式支持它。我只是记不起正则表达式世界中概念的名称。

我需要搜索并替换特定模式的字符串,但模式可以不同,替换需要“记住”它要替换的内容。

例如,假设我有一个任意字符串:134kshflskj9809hkj

我想用括号将数字括起来, 所以结果将是:(134)kshflskj(9809)hkj

找数字很简单,但是如何围起来呢?

任何人都可以提供示例或为我指明正确的方向吗?

请您参考如下方法:

在一些不同的语言中:

// C#: 
string result = Regex.Replace(input, @"(\d+)", "($1)"); 
// JavaScript: 
thestring.replace(/(\d+)/g, '($1)'); 
// Perl: 
s/(\d+)/($1)/g; 
// PHP: 
$result = preg_replace("/(\d+)/", '($1)', $input); 

(\d+) 周围的括号使其成为一个“组”,特别是第一个(并且仅在这种情况下)组,可以是 backreferenced在替换字符串中。 g 标志在某些实现中是必需的,以使其在单个字符串中匹配多次)。替换字符串非常相似,尽管有些语言会使用 \1 而不是 $1 并且有些语言会同时使用这两种语言。