我正在使用正则表达式将 . 之后的第一个字母大写。或者 ?或者 !但我无法使用大写字母,有什么我遗漏的吗?
val reply = line.replaceAll("""([\.!?])\s+([a-z])""","""$1"""+" "+"""$2""".toUpperCase)
.toUpperCase
没有效果所以我尝试了这个:
val pattern = """(?:(.+)?([\.!?])\s+([a-z])(.+)?)+""".r
val reply = line match {
case pattern(a,b,c,d) => a+b+" "+c.toUpperCase+d
case _ => line
}
这与 的所有出现不匹配。并且它仅在第一个句点之后将字母大写。