加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式 – 将带有分隔符的字符串拆分为Scala中的每个字符

发布时间:2020-12-13 22:56:52 所属栏目:百科 来源:网络整理
导读:我试图用|分割文本串条形分隔符. 123.123.123.123 | 000.000.000.000到每个ip地址块.但每个数字都不是由|分裂. scala "123.123.123.123|000.000.000.000".split("|")res30: Array[java.lang.String] = Array("",1,2,3,.,|,0)scala "123.123.123.123".split("
我试图用|分割文本串条形分隔符. 123.123.123.123 | 000.000.000.000到每个ip地址块.但每个数字都不是由|分裂.
scala> "123.123.123.123|000.000.000.000".split("|")
res30: Array[java.lang.String] = Array("",1,2,3,.,|,0)

scala> "123.123.123.123".split("|")
res33: Array[java.lang.String] = Array("",3)

所以我把分隔符作为Char,它显示了我的意图.

scala> "123.123.123.123|000.000.000.000".split('|')
res31: Array[String] = Array(123.123.123.123,000.000.000.000)

scala> "123.123.123.123".split('|')
res32: Array[String] = Array(123.123.123.123)

为什么单个角色会有很大的不同?

我读过Scala doc和StringLike.scala,但没有得到答案.

def split(separators: Array[Char]): Array[String]
def split(separator: Char): Array[String]

谢谢.

Split方法接受 string或字符.如果你使用字符串,它将被解释为正则表达式和“|”被视为正则表达式’或’ – 在你的情况下它会回到’每个角色都进入它自己的垃圾箱’.逃避它有原始的分隔:
"123.123.123.123|000.000.000.000".split("|")
res1: Array[String] = Array(123.123.123.123,000.000.000.000)

字符分隔符按原样解释,因此您可以毫不费力地获得所需的结果

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读