Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.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中用另一个词替换一个词的所有实例#_C# - Fatal编程技术网

C# 如何在C中用另一个词替换一个词的所有实例#

C# 如何在C中用另一个词替换一个词的所有实例#,c#,C#,如何用C#中的另一个词替换一个词的所有实例?是否有一个RegexOption来指定替换Perl中的所有实例,如/g Perl: C#: 我缺少的部分在C#snippet中用?表示。在C#中,Regex.Replace函数是隐式全局函数,因此它相当于Perl中的g修饰符。您不需要任何RegexOptions,因为Perl替换上没有其他标志 line = Regex.Replace(line, "Oranges", "Pears"); 如果出于某种原因不需要全局行为,则需要使用实例,而不是静态方法

如何用C#中的另一个词替换一个词的所有实例?是否有一个
RegexOption
来指定替换Perl中的所有实例,如
/g

Perl:

C#:

我缺少的部分在C#snippet中用
表示。

在C#中,
Regex.Replace
函数是隐式全局函数,因此它相当于Perl中的
g
修饰符。您不需要任何
RegexOptions
,因为Perl替换上没有其他标志

line = Regex.Replace(line, "Oranges", "Pears");
如果出于某种原因不需要全局行为,则需要使用实例,而不是静态方法:

 line = (new Regex("Oranges")).Replace(line, "Pears", 1);
但是对于这种特定情况,您可能应该使用
String.Replace()
,因为这实际上不是一种模式:

line = line.Replace("Oranges", "Pears");
在C#中,
Regex.Replace
函数是隐式全局函数,因此这相当于Perl中的
g
修饰符。您不需要任何
RegexOptions
,因为Perl替换上没有其他标志

line = Regex.Replace(line, "Oranges", "Pears");
如果出于某种原因不需要全局行为,则需要使用实例,而不是静态方法:

 line = (new Regex("Oranges")).Replace(line, "Pears", 1);
但是对于这种特定情况,您可能应该使用
String.Replace()
,因为这实际上不是一种模式:

line = line.Replace("Oranges", "Pears");

为什么要使用
@
?这只是c#正则表达式的一个好习惯。以后可能需要将\s或其他正则表达式模式匹配字符添加到字符串中,否则您需要双反斜杠来转义我看到的第一个反斜杠-鉴于它是一个常量,我宁愿等到需要时再使用它。@NetMage,
@
只能用于常量文本,所以最后一条注释毫无意义。我也一直在使用
@“
来处理正则表达式模式、powershell脚本和其他类似字符串的代码,不管是否存在
\
@billmore,不要要求翻译代码。询问如何做你想做的事。修复了您的问题。为什么要使用
@
?这只是c#正则表达式的一个好习惯。以后可能需要将\s或其他正则表达式模式匹配字符添加到字符串中,否则您需要双反斜杠来转义我看到的第一个反斜杠-鉴于它是一个常量,我宁愿等到需要时再使用它。@NetMage,
@
只能用于常量文本,所以最后一条注释毫无意义。我也一直在使用
@“
来处理正则表达式模式、powershell脚本和其他类似字符串的代码,不管是否存在
\
@billmore,不要要求翻译代码。询问如何做你想做的事。修正了你的问题。希望你不介意编辑。如果您觉得内容太多,请随时回滚。希望您不介意编辑。如果你觉得太多了,可以随意后退。