大数据

Scala字符串中的替换模式

2018-02-14  本文已影响295人  SunnyMore

用正则表达式匹配一段字符串然后替换它们;因为String是不可变的,不可以在它上面直接查找然后替换,但是可以新建一个String,并且新建的String包含了替换之后的字符;
在Scala中可以在String上调用replaceAll,eg.

    val address = "zhengfangzhonglu 888No. 777"
    println(address.replaceAll("[0-9]", "x"))

输出如下:

zhengfangzhonglu xxxNo. xxx

也可以创建一个正则表达式,并在正则表达式上面调用replaceAllIn方法,eg.

    val regex = "[0-9]".r
    val newAddress = regex.replaceAllIn("zhengfangzhonglu 888No. 777", "x")
    println(newAddress)

输出如下:

zhengfangzhonglu xxxNo. xxx

也可以使用正则表达式的replaceFirstIn只替换第一个元素,eg.

    val newAddress1 = regex.replaceFirstIn("zhengfangzhonglu 888No. 777", "x")
    println(newAddress1)

输出如下:

zhengfangzhonglu x88No. 777
上一篇 下一篇

猜你喜欢

热点阅读