我试图找到单词中包含3个字母(e在下面的例子中)的单词 需要找到使用正则表达式。
val inputString = """edepak,suman,employdee,eeeee,eme,ev"""
我写了下面的代码。
val numberPatteren = "([a-z]*e){3,}".r
但我得到的输出低于预期。
employdee,eeeee
但输出应该只是 - employdee
你可以帮我解决这个问题。答案 0 :(得分:0)
您只需执行以下操作即可实现此目的
scala> inputString.split(",").filter(word => word.count(_ == 'e') == 3).mkString(",")
//res16: String = employdee
如果您想使用正则表达式,可以执行以下操作
scala> val numberPatteren = "[a-df-zA-DF-Z0-9]".r
//numberPatteren: scala.util.matching.Regex = [a-df-zA-DF-Z0-9]
scala> inputString.split(",").filter(numberPatteren.replaceAllIn(_, "").length == 3).mkString(",")
//res0: String = employdee