首页 > 解决方案 > 如何删除空格“U+3164”?

问题描述

我的代码使用 . 检查空白/空字符串"".isNullOrBlank()

但我遇到了一个非常奇怪的案例。

ㅤㅤㅤㅤㅤㅤ

你看到这个空白了吗?如果您使用 .isNullOrBlank() 进行检查,它会返回 false。

我尝试使用以下代码将其删除,但我无法...

println("       ㅤㅤㅤㅤㅤㅤ       ".replace("\\t+".toRegex(), "").isNullOrBlank())
println("       ㅤㅤㅤㅤㅤㅤ       ".replace("\\n+".toRegex(), "").isNullOrBlank())
println("       ㅤㅤㅤㅤㅤㅤ       ".replace("\\r+".toRegex(), "").isNullOrBlank())
println("       ㅤㅤㅤㅤㅤㅤ       ".replace("\\s+".toRegex(), "").isNullOrBlank())

该字符串由空格和“U+3164”组成。

所以如果我使用下面的代码,它会打印“true”

println("       ㅤㅤㅤㅤㅤㅤ       ".replace("\u3164", "").isNullOrBlank()) // prints true

但我不喜欢这个。

我不太了解 unicode 世界。也许有很多类似的unicode...我想涵盖所有情况...

我怎样才能做到这一点?

标签: javastringkotlin

解决方案


推荐阅读