如何确定字符串是否包含集合的任何元素



我有一个句子,我想确定它是否包含一个集合的任何元素。

val sentence = "Hello, today is a fine day to learn scala"
val mySet = Set("day", "scala")

怎么样:

mySet.exists(word => sentence.contains(word))

如果从集合中至少有一个单词出现在字符串中,则返回true

这是一个解决方案…

  • ——敏感("scala"does)match"Scala")
  • 忽略子字符串("rat"doesnot)match"rats")
  • 忽略标点符号(!?,-),除非mySet
  • 中特别指定
mySet.mkString("(?i)\b(", "|", ")\b")
.r.unanchored
.matches(sentence)

最新更新