繁体   English   中英

scala:使用正则表达式来转义某些字符

[英]scala: use a regular expression to escape certain characters

我想逃避他们面前的某些角色

我提出了以下解决方案:

scala> val l = List(".", "+", " ")
scala> val x = "hola.vamos a+escapar"
scala> l.foldRight(x){ (char, text) => text.replaceAll("""\""" + char, """\\""" + char) }
res1: java.lang.String = hola\.vamos\ a\+escapar

但我很确定必须有一种方法来使用正则表达式来实现它,但我不知道如何引用匹配的文本......

"hola.vamos a+escapar".replaceAll("([.+ ])", "\\\\$1")

要么

"hola.vamos a+escapar".replaceAll("([.+ ])", """\\$1""")

取决于你是否喜欢大量的报价或大量的反斜杠。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM