我正在尝试创建一个程序来读取 .txt 文件并将该文件拆分为单独的列表。
我正在用它来尝试将我的字符串分成 4 部分:
val parts = it.split("\\s".toRegex())
val part1 = parts[0]
val part2 = parts[1]
val part3 = parts[2]
val part4 = parts[3]
Run Code Online (Sandbox Code Playgroud)
(我使用“\s”的原因是单词之间的空格数量不一致)
但是,文件中的某些行以一两个空格开头,这会导致第一个单词未被检测到。
有没有办法让我忽略或仅删除每行的第一个空白?目前,当我尝试打印第 [0] 部分时,它返回为空白
你想要的可能是这样的:
val textLine = " part1 part2 part3 part4"
// wrong way
val parts = textLine.split("\\s".toRegex())
println(parts) // [, part1, part2, part3, , part4]
// correct way
val partsWithTrim = textLine.trim().split("\\s+".toRegex())
println(partsWithTrim) // [part1, part2, part3, part4]
Run Code Online (Sandbox Code Playgroud)
请注意trim
从字符串的开头和结尾删除空格的调用以及+
正则表达式部分中的符号以真正处理不一致的空格数。
归档时间: |
|
查看次数: |
5368 次 |
最近记录: |