当我使用 ,
拆分字符串时按预期工作:
val line1 = "this,is,a,test" //> line1 : String = this,is,a,test
val sLine = line1.split(",")
但是如果我使用
|
字符串被拆分为其字符元素并添加到数组:val line1 = "this|is|a|test" //> line1 : String = this|is|a|test
val sLine = line1.split("|") //> sLine : Array[String] = Array("", t, h, i, s, |, i, s, |, a, |, t, e, s, t)
为什么会发生这种情况?特点 ?
最佳答案
可能的解决方案
val sLine2 = line1.split('|')
因为
'
表示一个字符,单个字符,split
不将其视为正则表达式val sLine2 = line1.split("\\|")
逃避特殊的交替
|
正则表达式字符。这就是它不起作用的原因。 split
正在治疗 |
作为零宽度正则表达式,因此字符串被蒸发为其组成字符
关于string - 无法使用 | 拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23085722/