您的位置:首页 > 编程语言 > Java开发

C#中如何实现JAVA中的String.replaceAll()方法功能

2012-01-09 22:52 896 查看
jdk原文注释:
string java.lang.string.replaceall(string regex, string replacement)
replaceall
public string replaceall(string regex,
string replacement)
replaces each substring of this string that matches the given
regular expressionwith the given replacement.
an invocation of this method of the form str.replaceall(regex, repl)yields exactly the same result as the expression
pattern.
compile
(regex).
matcher
(str).
replaceall
(repl)
note that backslashes (\) and dollar signs ($) in the replacement string may cause the results to be different than if it were being treated as a literal replacement string; see
matcher.replaceall
. use
matcher.quotereplacement(java.lang.string)
to suppress the special meaning of these characters, if desired.
parameters:regex- the regular expression to which this string is to be matchedreplacement- the string to be substituted for each matchreturns:the resulting stringthrows:patternsyntaxexception-
if the regular expression's syntax is invalidsince:1.4see also:pattern
其实,大体功能就是java中的replaceall(string regex, string replacement)方法,可以通过指定第一个参数“regex”——正则表达式或者需要替换的子字符串,第二个参数则是用于替换原串或与正则匹配的原串的字符串。
c#中,string 类 有replace(string oldvalue,string newvalue)方法,可以与上述java中的replacealll()方法中的“非正则匹配替换”功能相对应。
那么c#中如何实现“非正则匹配替换”功能呢?是否真的没得折腾了呢,哈哈,要相信在java中有的,c#中大部分都能找到“映射”的。
肺话不多说,看看如何实现吧!
c#中的正则类regex有个静态方法——“replace(sting input,string pattern,string replacement)”可以实现上述功能。
c#源码:
string line = " 1da232";
line=regex.replace(line.trim(),"\\s+", " ");
java源码:
string line = " 1da232";
line = line.trim().replaceall("\\s+", " ");
上述两种源码的最终实现的功能是一致的。
总结:java中的replaceall(string regex, string replacement)方法的功能,在c#中可以通过如下方式实现
a、string 类 有replace(string oldvalue,string newvalue)方法,可以与上述java中的replacealll()方法中的“非正则匹配替换”功能相对应。
b、正则类regex有个静态方法replace(sting input,string pattern,string replacement)”,可以实现上述“正则匹配替换”功能。

======================================================

在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定
这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐