如何从Kotlin中的字符串中删除所有分隔符?
我正在尝试清理二维码输出。 我试图通过改造发送的值是 01086819370066217621856423112169391721061310190603 但是OKHttp日志显示如何从Kotlin中的字符串中删除所有分隔符?,kotlin,retrofit2,Kotlin,Retrofit2,我正在尝试清理二维码输出。 我试图通过改造发送的值是 01086819370066217621856423112169391721061310190603 但是OKHttp日志显示 example.com/endpoint/etc/&Qrcode=%1D010868193700666621762185642311216939%1D172106131020190603 当我使用此.trim()时。替换(“\u00D”,”) 如何删除这些不需要的字符?您可以在下面尝试仅从字符串中收集数字
example.com/endpoint/etc/&Qrcode=%1D010868193700666621762185642311216939%1D172106131020190603
当我使用此.trim()时。替换(“\u00D”,”)
如何删除这些不需要的字符?您可以在下面尝试仅从字符串中收集数字
var result = string.filter { it.isDigit() }
您可以在下面尝试仅从字符串中收集数字
var result = string.filter { it.isDigit() }
这就解决了我的问题。
我把它转换成Kotlin的一个扩展,就像这样
val String.cleanTextContent: String
get() {
// strips off all non-ASCII characters
var text = this
text = text.replace("[^\\x00-\\x7F]".toRegex(), "")
// erases all the ASCII control characters
text = text.replace("[\\p{Cntrl}&&[^\r\n\t]]".toRegex(), "")
// removes non-printable characters from Unicode
text = text.replace("\\p{C}".toRegex(), "")
return text.trim()
}
这就解决了我的问题。
我把它转换成Kotlin的一个扩展,就像这样
val String.cleanTextContent: String
get() {
// strips off all non-ASCII characters
var text = this
text = text.replace("[^\\x00-\\x7F]".toRegex(), "")
// erases all the ASCII control characters
text = text.replace("[\\p{Cntrl}&&[^\r\n\t]]".toRegex(), "")
// removes non-printable characters from Unicode
text = text.replace("\\p{C}".toRegex(), "")
return text.trim()
}
您可以使用Kotlin的String.filter引用:您可以使用Kotlin的String.filter引用:此示例未显示,但我的输入可能包含a-zA-Z+-关于
答案的内容。替换(regex=“[^a-zA-z0-9]”,”)
请让我知道您需要支持的所有字符?是的,我考虑过并打算这样做,但是,就像我说的,它可能包含+-这些,我不知道你需要支持+-和-太rt?这个例子没有显示,但我的输入可能包含a-zA-Z+-关于答案的内容。替换(regex=“[^a-zA-z0-9]”,”)
请让我知道你需要支持的所有字符是什么?是的,我考虑过,并且打算这样做,但是,就像我说的,它可能包含+-这些,我不知道你需要支持+和-太rt?