当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Scala UnanchoredRegex.replaceSomeIn用法及代码示例


replaceSomeIn 方法(或属性)属于 scala.util.matching.UnanchoredRegex 特性(trait),其相关用法说明如下。

用法:

def replaceSomeIn(target: CharSequence, replacer: Match => Option[String]): String

使用返回 scala.Option 的替换函数替换一些匹配项.replacer 函数采用scala.util.matching.Regex.Match,以便可以从匹配中获取额外信息。例如:

import scala.util.matching.Regex._

val vars = Map("x" -> "a var", "y" -> """some $ and \ signs""")
val text = "A text with variables %x, %y and %z."
val varPattern = """%(\w+)""".r
val mapper = (m: Match) => vars get (m group 1) map (quoteReplacement(_))
val repl = varPattern replaceSomeIn (text, mapper)

在替换字符串中,后跟数字的美元符号 ($) 将被解释为对匹配模式中组的引用,数字 1 到 9 对应于前九组,0 代表整个匹配.任何其他字符都是错误的。反斜杠 (\) 字符将被解释为转义字符,可用于转义美元符号。使用Regex.quoteReplacement 转义这些字符。

值参数:

replacer

可选地将匹配项映射到另一个字符串的函数。

target

要匹配的字符串。

返回:

替换后的目标字符串。

继承自:

util.matching.Regex.replaceSomeIn

源码:

Regex.scala

相关用法


注:本文由纯净天空筛选整理自scala-lang.org大神的英文原创作品 UnanchoredRegex.replaceSomeIn。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。