regex - Scala子字符串匹配以匹配名词
问题描述
如果它们在 scala 之间有空格,是否有任何正则表达式来匹配子字符串?
例如:
"hero 6 go pro" contains "gopro" should return true
"go pro hero 6 " contains "gopro" should return true
我试过了 :
def matchWords(input: Seq[Char], words: Seq[Char]): Boolean = (input, words) match {
case (Seq(), Seq() | Seq(' ', _*)) => true
case (Seq(), _) => false
case (Seq(a, tail@_*), Seq(b, rest@_*)) if a == b => matchWords(tail, rest)
case (_, Seq(' ', rest@_*)) => matchWords(input, rest)
case _ => false
}
但
matchWords("gopro", "hero 6 go pro") 返回 false
虽然这个 matchWords("fitbit", "fit bitversa") 返回 true。
字符串应该匹配名词。
知道我在这里做错了什么吗?
谢谢, 沙利尼
解决方案
推荐阅读
- python - 如何提高这个脚本速度?
- ios - 执行核心数据迁移时如何获取关系实体?
- python - 如何修复 Google Cloud 上的 YouTube-dl 无效参数?
- apk - 有什么办法可以将.exe文件更改为.apk?
- paypal - Magento 1为特定金额而不是产品创建部分发票
- python - OpenCV 不写入文件
- matlab - 在 Matlab 中的函数内调用向量的元素
- javascript - Javascript 使用回调中的值构建一个数组
- vue.js - Vue-Route 和 Axios 不能在同一个页面中协同工作
- flutter - 尝试将颤振与 AWS CodeBuild 一起使用时出错