大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > C#技巧 > 使用Regex.Replace只替换字符串一次

使用Regex.Replace只替换字符串一次

关键词:RegexReplace替换字符串  阅读(4745) 赞(58)

[摘要]C#执行一次替换,可以使用这则表达式来实现,正则的Replace有6中重载版本,可以指定替换次数了开始位置。比较类型在构造正则表单时时指定,不在Replace方法中指定。

替换一个字符串里的某段字符,并且只替换一次

要自己写又麻烦,后来看了下才发现Regex.Replace里有很多其他的参数都没注意。

C#执行一次替换,可以使用这则表达式来实现,正则的Replace有6中重载版本,可以指定替换次数了开始位置。比较类型在构造正则表单时时指定,不在Replace方法中指定。


Regex构造函数

Regex(string pattern)

Regex(string pattern,RegexOptions options)

参数说明

pattern:要匹配的正则表达式模式

options:指定是否要编译,忽略大小写等等


Regex.Replace方法

C#

Regex.Replace(string input,string replacement)

Regex.Replace(string input,string replacement,int count)

Regex.Replace(string input,string replacement,int count,int startat)

Regex.Replace(string input,MatchEvaluator evaluator)

Regex.Replace(string input,MatchEvaluator evaluator,int count)

Regex.Replace(string input,MatchEvaluator evaluator,int count,int startat)


参数说明

input:要修改的字符串

replacement:替换字符串

count:进行替换的最大次数

startat:输入字符串开始搜索的位置

evaluator:在每一步计算替换的MatchEvaluator。就是一个函数代理,参数为Match类型,匹配的数据。


C#

asp.net--C#字符串只执行一次替换的示例代码

先引用命名空间:

using System.Text.RegularExpressions;

string s = "aaa";
Regex r = new Regex("a");
s=r.Replace(s,"b",1);
Response.Write(s);//输出baa



相关评论