Android 正则表达式删除除句点以外的所有特殊字符

Android 正则表达式删除除句点以外的所有特殊字符,android,regex,kotlin,Android,Regex,Kotlin,我需要帮助创建一个正则表达式,删除所有特殊字符,包括逗号,但不包括句点。我试图做的是逃避所有我不想要的字符、符号和标点符号。它没有按预期工作 replace("[-\\[\\]^/,'*:.!><~@#\$%+=?|\"\\\\()]+".toRegex(), "") replace(“[-\[\]^/,”*:.!>您可以使用 """[\p{P}\p{S}&&[^.]]+"&q

我需要帮助创建一个正则表达式,删除所有特殊字符,包括逗号,但不包括句点。我试图做的是逃避所有我不想要的字符、符号和标点符号。它没有按预期工作

replace("[-\\[\\]^/,'*:.!><~@#\$%+=?|\"\\\\()]+".toRegex(), "")
replace(“[-\[\]^/,”*:.!>您可以使用

"""[\p{P}\p{S}&&[^.]]+""".toRegex()
[\p{p}\p{S}&[^.]+
模式匹配一个或多个(
+
)标点符号(
\p{p}
)或符号(
\p{S}
)字符,而不是点(
&&[^.]
,使用字符类减法)

见a:


是的。我正在使用Kotlin。让我把它添加到我的问题中。谢谢你的回答。我用“如果{cat.is}戴在帽子里,那么我就吃绿鸡蛋和火腿!”来尝试。替换(“[\p{p}\p{S}&[^.]+”。toRegex(),”)。我本来希望逗号和!会被删除,但事实并非如此。@portfoliobuilder See.
if{cat.is}在帽子里,我吃绿色的鸡蛋和火腿!
变成
如果猫在帽子里,我就吃绿色的鸡蛋和火腿。
"""[\p{P}\p{S}&&[^.]]+""".toRegex()
println("a-b)h.".replace("""[\p{P}\p{S}&&[^.]]+""".toRegex(), ""))
// => abh.