replace和replaceAll是JAVA中常用的替换字符的方法(转载)
热1已有 257 次阅读 2010-07-16 08:58
填问卷赢好书华章读者调研活动结果公布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('/', '\\');
分享到:
相关推荐
replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是: 1)replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也是字符串); 2)...
Java中的`replace`、`replaceAll`和`replaceFirst`是字符串操作中常见的方法,用于替换字符串中的特定子串。它们都是`String`类的方法,但各自有不同的行为和用途。 1. `replace(CharSequence target, CharSequence...
3. `replaceFirst(String regex, String replacement)`:这个方法只替换字符串中第一个匹配正则表达式的部分,而不是全部。与`replaceAll()`的区别在于它不是全局替换。 了解了这些方法后,我们来看一个简单的示例...
其中,replace(char oldChar, char newChar) 方法是用新的字符 newChar 替换字符串中所有出现的 oldChar,返回一个新的字符串。replace(CharSequence target, CharSequence replacement) 方法是使用指定的字面值 ...
`replaceAll`函数就是Java(也是Android)中处理字符串替换的一个重要方法。这个方法来自`String`类,允许我们用新的字符串替换掉原字符串中匹配某个模式的所有实例。在这个案例中,我们要关注的是如何替换字符串中...
本文将深入探讨Java中的一些常用字符串方法,帮助你更好地理解和运用它们。 1. **创建字符串对象** 在Java中,有多种方式来创建字符串对象,如通过`new`关键字、使用`String`字面量或者通过`StringBuffer/...
因此,如果需要实现replaceAll效果,即替换字符串中所有匹配的子串,可以使用正则表达式配合replace()方法来实现。 正则表达式中的全局匹配标志(g)用于指示匹配操作应该在输入字符串中进行全局搜索,即查找到所有...
以下是一些Java `String`类中常用的方法,这些方法对于理解和操作字符串至关重要。 1. **创建字符串** - `new String()`: 使用此构造函数创建一个新的字符串对象,可以传入字符数组或另一个字符串作为参数。 - `...
`StringBuffer`和`StringBuilder`类也提供了`replace()`方法来替换字符串中的某个字符或字符串。这些类提供了更多的灵活性,并且可以在不创建新对象的情况下修改现有字符串。 ##### 1. `StringBuffer`的`replace()`...
在Java编程语言中,`replace`方法是字符串(String)类的一个重要成员,用于替换字符串中的特定字符或子串。这个方法在处理文本数据时非常常用,尤其在我们需要替换某个字符或者模式时。下面我们将详细探讨`replace`...
在Java编程语言中,`replace()` 和 `replaceAll()` 都是用来进行字符串替换的函数,但它们之间存在一些关键差异。 `replace()` 方法接受两个 `char` 类型的参数,一个是需要查找的字符,另一个是用于替换的字符。这...
`StringBuilder`和`StringBuffer`是可变的字符串类,它们提供了在字符串中添加、删除和替换字符的方法。例如,我们可以遍历原始字符串,如果遇到的字符不是要删除的字符,就将其添加到新的`StringBuilder`实例中。...
在下面的示例代码中,我们使用 Pattern.compile() 方法来编译正则表达式,然后使用 Matcher 对象的 replaceAll() 方法来替换字符串中的无用字符。 ```java public class StringUtil { public static void ...
本资源"java常用字符串方法,网络收集,txt版"主要整理了Java中常用的字符串处理方法,这对于Java程序员来说是一份宝贵的参考资料。下面,我们将详细探讨这些方法,并结合实例进行讲解。 1. **创建字符串** - `...
在Java中,有多种方法可以实现这个功能,其中最常用的是使用`String`类提供的`replace()`和`replaceAll()`方法。这里我们将重点讨论`replaceAll()`,因为它支持正则表达式,能更灵活地处理多种情况。 首先,让我们...
在Java编程语言中,`String`类提供了多种方法...总的来说,Java的`replace()`方法是字符串处理中常用的工具,用于简单而直接的字符或子串替换。理解其工作原理和用法,能帮助我们在编写程序时更高效地处理字符串数据。
6. **查找与替换**:`indexOf()`和`lastIndexOf()`用于查找子字符串出现的位置,`replace(oldChar, newChar)`或`replaceAll(oldPattern, newPattern)`用于替换特定字符或模式。 7. **分割字符串**:`split()`方法...
标题中的“字符串批量替换小工具(java版)”表明这是一个使用Java编程语言实现的程序,它的主要功能是对字符串进行批量替换操作。在IT行业中,批量处理往往指的是处理大量数据或执行重复任务,而字符串替换是文本处理...
2. **字符串替换**:在读取的内容中,通过`String`类的`replace()`或`replaceAll()`方法进行字符串替换操作。`replace()`函数用于简单替换,而`replaceAll()`支持正则表达式替换。 3. **写回文件**:使用`FileWriter...