java将点序列替换为一个下划线 1 周,4 日 Questions & Answers 4364 我有一根绳子,上面有任意数量的点,有时也有一系列的点 我想用_(下划线)替换每个.(点),但是当有一系列点时,这也应该只产生一个下划线 有什么想法吗 我在用java
# 1 楼答案 您可以使用replaceall方法: str = str.replaceAll("\\.+","_"); See it on Ideone 正则表达式的解释\\.+ .是一个regex元字符,可以匹配任何东西(除了换行符)。因为我们想要匹配一个文字.,所以我们用\来转义它。由于Java字符串和正则表达式引擎都使用\作为转义字符,我们需要使用\\,+是一个或多个字符串的量词 或者,我们可以使用: str = str.replaceAll("[.]+","_"); 由于字符类中的.是按字面意思处理的,因此不需要转义它
# 1 楼答案
您可以使用
replaceall
方法:See it on Ideone
正则表达式的解释
\\.+
.
是一个regex元字符,可以匹配任何东西(除了换行符)。因为我们想要匹配一个文字.
,所以我们用\
来转义它。由于Java字符串和正则表达式引擎都使用\
作为转义字符,我们需要使用\\
,+
是一个或多个字符串的量词或者,我们可以使用:
由于字符类中的
.
是按字面意思处理的,因此不需要转义它