除了后面使用正则表达式之外,java.lang.String的替换()
和替换所有()
方法有什么区别?对于简单的替换,如将.
替换为/
,有什么区别吗?
replace()
和replaceAll()
都替换字符串中出现的所有内容。
我总是发现例子有助于理解差异。
如果您只想用另一个字符
替换一些char
,或者用另一条字符串
替换一些字符串,请使用
replace()
(实际上是CharSequence
)。
例1
将字符
x
的所有匹配项替换为 o
。
String myString = "__x___x___x_x____xx_";
char oldChar = 'x';
char newChar = 'o';
String newString = myString.replace(oldChar, newChar);
// __o___o___o_o____oo_
示例 2
将所有出现的字符串< code>fish
替换为< code>sheep。
String myString = "one fish, two fish, three fish";
String target = "fish";
String replacement = "sheep";
String newString = myString.replace(target, replacement);
// one sheep, two sheep, three sheep
如果要使用正则表达式模式,请使用replaceAll()
。
例3
将任何数字替换为x
。
String myString = "__1_6____3__6_345____0";
String regex = "\\d";
String replacement = "x";
String newString = myString.replaceAll(regex, replacement);
// __x_x____x__x_xxx____x
示例 4
删除所有空格。
String myString = " Horse Cow\n\n \r Camel \t\t Sheep \n Goat ";
String regex = "\\s";
String replacement = "";
String newString = myString.replaceAll(regex, replacement);
// HorseCowCamelSheepGoat
文档
替换(char-oldChar,char-newChar)
替换(CharSequence目标,charsequencereplacement)
replaceAll(字符串正则表达式,字符串替换)
replaceFirst(字符串正则表达式,字符串替换)
正则表达式
问:< code>java.lang.String方法< code>replace()和< code>replaceAll()之间有什么区别,除了后者使用regex。
答:只有正则表达式。它们都替换所有:)
http://docs.oracle.com/javase/8/docs/api/java/lang/String.html
PS:
还有一个replace eFirst()
(需要正则表达式)
在<code>java.lang.Stringreplace方法将替换所有出现的字符或CharSequence
。另一方面,replaceFirst
和repliceall
,的第一个String
arguments是正则表达式(regex)。使用错误的函数可能会导致细微的错误。
问题内容: 除了以后使用正则表达式之外,java.lang.String 和方法之间有什么区别?对于简单的替代喜欢,更换用 ,有什么不同? 问题答案: 在中,该replace方法可以采用一对或一对(其中是子类,因此很高兴采用一对)。该方法将替换所有出现的或。在另一方面,这两个参数和正则表达式(正则表达式)。使用错误的功能可能会导致细微的错误。
本文向大家介绍Java字符串replace(),replaceFirst()和replaceAll()方法,包括了Java字符串replace(),replaceFirst()和replaceAll()方法的使用技巧和注意事项,需要的朋友参考一下 该方法 String类的replace()方法接受两个String值- 一个表示要替换的String(子字符串)部分。 另一个代表需要替换指定子字符串的
问题内容: 一个非常简单的问题,但这是来自C / C ++人员进入Java的复杂性的。 我知道我可以启动jUnit和自己的一些性能测试来获得答案。但我只是想知道这是否在那里。 在性能方面,String.replaceAll()和Matcher.replaceAll()(在从Regex.Pattern创建的Matcher对象上)之间是否存在已知差异? 此外,两者在高级API方面的区别是什么?(不可变
这些声明有什么不同? 每种情况下的内存分配情况如何?
调用这些方法的主要区别是什么: 替换已经存在的片段,将片段添加到活动状态,并将活动添加到后堆栈,这意味着什么? 其次,使用,此搜索是通过/方法还是通过方法添加的标记?
我错过了什么?