当前位置:首页 » 编程语言 » javareplaceall

javareplaceall

发布时间: 2022-04-20 11:43:25

⑴ 浅谈java中replace和replaceAll的区别

replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是:
1、replace的参数是char和CharSequence,既可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串);
2、replaceAll的参数是regex,即基于规则表达式的替换,比如,可以通过replaceAll("\\d",
"*")把一个字符串所有的数字字符都换成星号;
3、相同点是都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串,如果只想替换第一次出现的,可以使用
4、replaceFirst(),这个方法也是基于规则表达式的替换,但与replaceAll()不同的时,只替换第一次出现的字符串;
5、另外,如果replaceAll()和replaceFirst()所用的参数据不是基于规则表达式的,则与replace()替换字符串的效果是一样的,即这两者也支持字符串的操作;
还有一点注意:执行了替换操作后,源字符串的内容是没有发生改变的.

⑵ java replaceall 怎么替换

replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是:
1)replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串);
2)replaceAll的参数是regex,即基于规则表达式的替换,比如,可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号;
相同点:都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串,如果只想替换第一次出现的,可以使用replaceFirst(),这个方法也是基于规则表达式的替换,但与replaceAll()不同的是,只替换第一次出现的字符串;
另外,如果replaceAll()和replaceFirst()所用的参数据不是基于规则表达式的,则与replace()替换字符串的效果是一样的,即这两者也支持字符串的操作;
还有一点注意::执行了替换操作后,源字符串的内容是没有发生改变的。
举例如下:

String src = new String("ab43a2c43d");

System.out.println(src.replace("3","f"));=>ab4f2c4fd.

System.out.println(src.replace('3','f'));=>ab4f2c4fd.

System.out.println(src.replaceAll("\\d","f"));=>abffafcffd.

System.out.println(src.replaceAll("a","f"));=>fb43fc23d.

System.out.println(src.replaceFirst("\\d,"f"));=>abf32c43d

System.out.println(src.replaceFirst("4","h"));=>abh32c43d.

如何将字符串中的"\"替换成"\\":

String msgIn;

String msgOut;

msgOut=msgIn.replaceAll("\\\\","\\\\\\\\");

原因:
'\'在java中是一个转义字符,所以需要用两个代表一个。例如System.out.println( "\\" ) ;只打印出一个"\"。但是'\'也是正则表达式中的转义字符(replaceAll 的参数就是正则表达式),需要用两个代表一个。所以:\\\\被java转换成\\,\\又被正则表达式转换成\。
同样
CODE: \\\\\\\\
Java: \\\\
Regex: \\
将字符串中的'/'替换成'\'的几种方式:

msgOut= msgIn.replaceAll("/", "\\\\");

msgOut= msgIn.replace("/", "\\");

msgOut= msgIn.replace('/', '\\');

通过实例区分了java中replace()和replaceAll()的不同点,希望本文对大家学习有所帮助

⑶ java replaceAll该怎么用

  1. API如下:

    publicStringreplaceAll(Stringregex, Stringreplacement)
    regex: 需要匹配替换的正则

    replacement: 将匹配的串替换为此字符串

  2. 根据API可知,一个String对象即可调用此API

    参考以下例子:

    String s = new String("I love programming so much!");

    System.out.println(s);//I love programming so much!

    s = s.replaceAll("m{1,}", "xxxx_xxxx");

    System.out.println(s);//I love progrxxxx_xxxxxxxx_xxxxaing so xxxx_xxxxuch!

  3. 那么 tmpString = tmpString.replaceAll("'", "\\'");

  4. 官方最新API地址docs.oracle.com/javase/8/docs/api/

⑷ java中replaceAll的用法,不同的用法为什么会报错

StringBuilder 可以用repalce方法。

其实你这里都可以用这个方法,效果和repalceAll是一样的,代码如下:

packagemytest;
//replace替换匹配字符串
publicclasstest{
publicstaticvoidmain(String[]args){
Strings1="上海自来水来自海上";
System.out.println(s1.replace("自来水","*"));//将“自来水”三个字替换为“*”

StringBuilders2=newStringBuilder();
s2.append("大家好").append("这是苍井空").append("老师");
System.out.println(s2.replace("苍井空","井空"));

}
}

replaceAll方法比replace方法功能主要是多了可以用正则表达式来匹配字符串,你这里没有用正则,用replace方法就好,而且String 和 StringBuilder都有这个方法

⑸ java中String的replaceAll方法

字符组中“”是有转义的含义的,就跟你replaceAll中使用多个""是为了转义一样。

你定义var1时,java是认为"dfas'f"中的""是转义字符,转义"'"(最后还是"'")。所以var1和var2其实是一样的。这也是为什么你replaceAll后的结果也是一样的。

publicclassTest{
publicstaticvoidmain(String[]args){
Stringvar1="dfas'f";
Stringvar2="dfas'f";
System.out.println(var1);//结果是dfas'f
System.out.println(var1.equals(var2));//结果是true
}
}

⑹ java replaceAll 正则表达式的用法是什么

String a = "2016-06-24 10:33:20";

String b = a.replaceAll("[-\s:]", "");

System.out.println(b);

跟你简单说明下

正则表达式中[]中的内容表示匹配其中任何一个

s 表示匹配任何不可见的空字符,但是在java中需要在前面再加一个转义字符才能生效

⑺ java replaceAll用法


String s1 = s.replaceAll(ss, "");
System.out.println(s1);
改为
s = s.replaceAll(ss, "");
System.out.println(s);
即可

⑻ JAVA中string.replace和string.replaceAll的区别及用法

1、替换方式不同

【public String replace( )】

是通过用 newChar 替换此字符串中出现的所有 oldChar 而生成的。

【public String replaceAll( )】

使用给定的 replacement 字符串替换此字符串匹配给定的正则表达式的每个子字符串。

2、参数不同

【replace】的参数是char和CharSequence。可以支持字符的替换,也支持字符串的替换。

【replaceAll】的参数是regex,regex表示是正则表达式。即基于正则表达式的替换。

用法范例一:

public static void main(String[] arg) throws OgnlException {

String s =”sdf\a\aa”;

//把s中的反斜杠 替换为\

System.out.println(s);

System.out.println(s.replaceAll(“\\”, “\\\\”));

System.out.println(s.replace(“\”, “\\”));

}

用法范例二:

String str = "wel2come3Souhe";

String str1 = str.replace("e", "E");

String str3 = str.replace('e', 'E');

System.out.println("replace字符串==" + str1);

System.out.println("replace字符=="+str3);

String str2 = str.replaceAll("\d", "a");//将数字替换a

System.out.println("replaceAll==" + str2);

输出结果:

replace字符串==wEl2comE3SouhE

replace字符==wEl2comE3SouhE

replaceAll==welacomeaSouhe

(8)javareplaceall扩展阅读

Java中的String类

1、String类是final类,因此String类不能被继承。

2、String的成员方法都默认为final方法。

3、被final修饰的类是不允许被继承的,并且该类中的成员方法都默认为final方法。

4、String类其实是通过char数组来保存字符串的。

5、String对象一旦被创建就是固定不变的。

6、对String对象的任何改变都不影响到原对象,相关的任何change操作都会生成新的对象。

⑼ java replaceAll应该怎么用,谢谢大神了

替换字符串中所有符合条件的字符

有两个参数,第一个参数是被替换的串(也可以用正则),第二个参数是替换后的串
比如"aabbccaabbcc".replaceAll("aa","ss");
正则的"asd123asdiopiop".replaceAll("\\d", "kk");类似这种

⑽ java中,replaceAll方法中的问题

public String replaceAll(String regex,
String replacement)使用给定的 replacement 字符串替换此字符串匹配给定的正则表达式的每个子字符串。
此方法调用的 str.replaceAll(regex, repl) 形式产生与以下表达式完全相同的结果:

Pattern.compile(regex).matcher(str).replaceAll(repl)

参数:
regex - 用来匹配此字符串的正则表达式

replacAll要用正则表达式,所以[*]就可以,[*]表示*

热点内容
如何用安卓编译项目 发布:2025-01-24 08:30:46 浏览:863
计算机同时输出和存储设备的区别 发布:2025-01-24 08:29:21 浏览:581
食物语上传 发布:2025-01-24 07:58:44 浏览:754
编程相关书籍 发布:2025-01-24 07:55:45 浏览:430
英雄联盟手游需要哪些配置 发布:2025-01-24 07:42:03 浏览:985
regex可以静态编译吗 发布:2025-01-24 07:40:32 浏览:79
怎么编译rec 发布:2025-01-24 07:39:04 浏览:56
卡片没加密 发布:2025-01-24 07:33:56 浏览:381
linux备份mysql 发布:2025-01-24 07:26:54 浏览:391
苹果手机忘记id密码怎么刷机 发布:2025-01-24 07:26:47 浏览:695