我想删除字符串中的所有句号( . )。
因此我尝试了: inpt = inpt.replaceAll(".", "");
,但不是只删除句号,而是删除了字符串的全部内容。
是否可以只删除句号?谢谢您的回答!
不要使用replaceAll()
,使用replace()
:
inpt = inpt.replace(".", "");
这是一个常见的误解,replace()
它不会替换所有出现的事件,因为有一种replaceAll()
方法,但实际上两者都会替换所有出现的事件。这两种方法之间的区别在于replaceAll()
匹配正则表达式(正则表达式中的点表示“任何字符”,它解释了您遇到的情况),而replace()
匹配文字字符串。
String#replaceAll(String, String)
需要一个正则表达式。点是匹配任何东西的正则表达式元字符。
采用
inpt = inpt.replace(".", "");
它还将替换您的每个点inpt
,但将第一个参数视为文字序列,请参阅JavaDoc。
如果您想坚持使用正则表达式,则必须转义点:
inpt = inpt.replaceAll("\\.", "");
我认为你必须掩盖这个点
inpt = inpt.replaceAll("\\.", "");
replaceAll
使用正则表达式,请使用以下内容:
inpt = inpt.replaceAll("\\.", "")