替换仅位于字符串中间的子字符串

本文关键字:字符串 中间 替换 | 更新日期: 2023-09-27 18:31:07

我想要 C# 中的正则表达式模式,它可以在任何只位于中间的字符串中找到子字符串。让我们说,

Input : "toprohitpop rohittoppop toppoprohit" 

查找子字符串:"rohit"

替换为 : "$$$$"

输出 : "top$$$$pop rohittoppop toppoprohit"

如果子字符串"rohit"位于字符串的左侧或右侧,则不应替换它。子字符串"rohit"只有在字符串中间时才会被替换。

提前谢谢。

替换仅位于字符串中间的子字符串

使用非分词锚点:

'Brohit'B

仅当'B位于单词中间时,它才会匹配。

阅读有关它的信息。

var input = "toprohitpop rohittoppop toppoprohit";
var regex = new Regex(@"'Brohit'B");
var output = regex.Replace(input, "$$$$$$$$");

请参阅正则表达式语言中的"锚点"。

另外,请注意替换字符串中的"$"(请参阅注释)

使用以下正则表达式: .+rohit.+

基本上,它至少预示着罗希特之前和之后的字符