用字符串android中的下划线替换所有句号

时间:2017-03-23 18:32:48

标签: java android

我正在尝试用我正在使用的电子邮件地址中的下划线.替换所有句号_

String email = userEmail.replaceAll("."  ,  "_");

就像abc.d@xyz.com应该成为abc_d@xyz_com

但它会返回“____________”

提前致谢!祝你有个美好的一天

2 个答案:

答案 0 :(得分:1)

使用userEmail.replace("." , "_");

因为使用replaceAll.将作为regex表达式表示任何字符,因此您的整个字符串将替换为_

或者您可以转义.以使其作为文字

工作
String email = userEmail.replaceAll("\\."  ,  "_");

一个简单的例子是,假设您要替换abc后面的任何3个字符,然后replaceAll接受第一个输入为regex

"9a%abc.d@xyz.com".replaceAll("...abc", "_") //_.d@xyz.com

其中...匹配任意三个字符,后跟abc

Read more about Regex Oracle

答案 1 :(得分:1)

要么使用如上所述的替换,要么仍然想使用replaceAll,然后转义如下所示。

String email = userEmail.replaceAll("\\."  ,  "_");