Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在两个单词之间找到一个单词并替换它们_C#_String - Fatal编程技术网

C# 在两个单词之间找到一个单词并替换它们

C# 在两个单词之间找到一个单词并替换它们,c#,string,C#,String,如何在两个单词之间找到并替换为新字符串? 我想换一个 例如,给定字符串: string s = "word1-word2same-word3-word4"; same is = "word2"; 我想要的是: string s = "word1-word2word2-word3-word4"; 但如果给定的字符串是: string s = "word1same-word2-word3-word4"; same i

如何在两个单词之间找到并替换为新字符串? 我想换一个

例如,给定字符串:

string s = "word1-word2same-word3-word4";
same is = "word2";
我想要的是:

string s = "word1-word2word2-word3-word4";
但如果给定的字符串是:

string s = "word1same-word2-word3-word4";
same is -> word1;
在这个例子中,我想要的是:

string s = "word1word1-word2-word3-word4";

如何找到包含相同内容的单词?怎么做?

我认为下面的正则表达式替换就是您想要的

var input = "word1same-word2same-word3";
var result = Regex.Replace(input, "(?<=^|-)([^-]*)same", "$1$1");
Console.WriteLine(result);
var input=“word1same-word2same-word3”;

var result=Regex.Replace(输入),(?我认为您需要更好地描述您的规则。括号是否重要?连字符如何定义“单词”?
same is->tt(ss);
这里的意思是什么?如果字符串包含相同的内容,则需要将tt复制到firstGivenstring中。因此需要在相同的单词之前查找”所以需要在same的单词之前查找“---这不是一个问题的技术描述,所以你想用前面的所有字符替换“same”直到连字符?比如“abc defsame”就是“abc defdef”?你怎么表示“在same的单词之前查找”,是破折号吗?谢谢,这就是我要找的!:),无论如何,如果我想添加“->“在找到的单词和同一个单词之间,我该怎么办?@00110001是的,很抱歉,我的错。只需将替换项更改为“$1->$1”,输出结果将是“word1->word1-word2->word2-word3”@juharr是的,我找到了。谢谢你做的一切。回答得好。