阅读文章前,请先做道题(也是因为这道题,让我写下该文章):
- public static void main(String[] args) {
- String classPath = "java.lang.String";
- System.out.println(classPath.replaceAll(".", "/"));
- }
输出结果是?
如果你认为是java/lang/String ,那你就错了。正确的输出结果
是:////////////////
原因:请先看看replace和replaceAll的区别。
replace和replaceAll的区别:
1、replace的参数是CharSequence和CharSequence,其中第
一个是匹配的字符或字符串,第二个是替换的字符或字符串。即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,相当
于字符串)
2、replaceAll的参数是String和String,第一个参数regex,是替换规则(用正则表达式)。原因在于
String类中replaceAll的实现用到Pattern进行正则表达式匹配(关于正则表达式可以baidu或google一下,以后有空再写篇文
章总结下)。
replaceAll的源代码如下:
public String replaceAll(String regex,
String replacement) {
return
Pattern.compile(regex).matcher(this).replaceAll(replacement);
}
在正则表达式中.(小圆点)表示匹配除换行符号外的任意字符
,所以上面的例子才会出
现16个/
如果想匹配小圆点,可以用转义字符\
则代码应该如下:
System.out.println(classPath.replaceAll("\\.",
"/")); //其中\\匹配\,之后的\. 匹配.(小圆点)
当然,你也可以用replace()进行处理,如下:
System.out.println(classPath.replace(".", "/"));
分享到:
相关推荐
replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是: 1)replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也是字符串); 2)...
相信会java的同学估计都用过replace、replaceAll、replaceFirst这三个函数,可是,我们真的懂他们吗?下面通过这篇文章大家再来好好学习学习下这几个函数。
主要介绍了Java中replace与replaceAll区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了java中replace()和replaceAll()的区别,两者都是常用的替换字符的方法,感兴趣的小伙伴们可以参考一下
介绍了js replace 与replaceall实例用法详解,有需要的朋友可以参考一下
JavaScript 中使用 replace 达到 replaceAll的效果,其实就用利用的正则的全局替换。
将一段文字中的字符串全部替换 PowerBuilder ReplaceAll
JS 没有提供replaceAll这样的方法。使用正则表可以达成Replace 的效果,感兴趣的朋友看看下面的示例
js里没有replaceAll的函数,需要我们自定义 代码如下: String.prototype.replaceAll = function(s1,s2){ return this.replace(new RegExp(s1,”gm”),s2); } 2、使用js的replace进行处理 代码如下: str=str....
Console.WriteLine(ms.ReplaceLast("hello world","l","*")); //输出”hello wor*d" Console.WriteLine(ms.ReplaceAll("hello world","l","*")); //输出”he**o wor*d" ArrayList list=ms.GetPosList("hello world",...
string.prototype.replaceall 用于String.prototype.replaceAll的ES Proposal规范填充程序。 如果不可用或不String.prototype....// replaceAll and replace are the same, when given a global regex to replace as
而str.replace(/\-/g,”!”)则可以全部替换掉匹配的字符(g为全局标志)。 replace() The replace() method returns the string that results when you replace text matching its first argument (a regular ...
replaceAll()方法的作用和replaceWith()方法是完全一样的。 语法结构: 代码如下:$(content).replaceAll(selector) 参数列表: 参数 描述 content 用于替换的内容。 selector 用于查找所要被替换的元素 ...
第一次发现JavaScript中replace() 方法如果直接用str.replace(“-“,”!”) 只会替换第一个匹配的字符. 而str.replace(/\-/g,”!”)则可以全部替换掉匹配的字符(g为全局标志)。 replace() The replace() method ...
String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) { if (!RegExp.prototype.isPrototypeOf(reallyDo)) { return this.replace(new RegExp(reallyDo, (ignoreCase ? “gi”: “g...