use*_*267 5 regex scala string-comparison
如何比较这两个字符串:
val a = "fit bit versa"
val b = "fitbit"
Run Code Online (Sandbox Code Playgroud)
另一个例子
val a = "go pro hero 6"
val b = "gopro"
Run Code Online (Sandbox Code Playgroud)
另一个例子
val a = "hero go pro 6"
val b = "gopro"
Run Code Online (Sandbox Code Playgroud)
另一个例子
val a = "hero 6 go pro"
val b = "gopro"
Run Code Online (Sandbox Code Playgroud)
对于以上比较,我想获得“ true”,但在这里不行:
val a = "vegan protein powder"
val b = "vega"
Run Code Online (Sandbox Code Playgroud)
这应该是错误的。
目前我正在做:
def matchPattern(a:String, b: String):String=
{
val dd = a.split(" ")
val result = dd.map(_.toLowerCase())
if(result contains b.toLowerCase) true
else false
}
Run Code Online (Sandbox Code Playgroud)
这适用于最后一种情况,但不适用于其余情况。
有什么建议吗?
Dim*_*ima -1
我猜是这样的(您的要求不完整,所以我将它们解释为“与给定字符串的开头部分完全匹配,以空格或行尾结尾,也许空格除外)。
@tailrec
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
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
140 次 |
| 最近记录: |