C# 如何在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"); 如果出于某种原因不需要全局行为,则需要使用实例,而不是静态方法
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,不要要求翻译代码。询问如何做你想做的事。修正了你的问题。希望你不介意编辑。如果您觉得内容太多,请随时回滚。希望您不介意编辑。如果你觉得太多了,可以随意后退。