首页 > 解决方案 > 为什么模式匹配在 Scala 中不起作用?

问题描述

模式匹配不起作用,但为什么?

def replaceEmployerNameContainingAmpersand(emplName: String): String = {
   val r = "(?<! )&(?! )".r
   val r2 = "&(?! )".r
   val r3 = "(?<! )&".r

   emplName match {

     case r() => emplName.replaceAll("(?<! )&(?! )", " & ")

     case r2() => emplName.replaceAll("&(?! )", "& ")

     case r3() => emplName.replaceAll("(?<! )&", " &")


   }
 }

给定的字符串应该匹配它不是为什么?

标签: regexscalapattern-matching

解决方案


推荐阅读