SQL 喜欢并匹配 Swift 中的字符串查询
SQL like & matches query on string in Swift
我想写一个可以对两个字符串进行比较的函数。
像这样:
func stringComparison(_ str1:String, comparisonOperator:StringComparisonOperator, _ str2:String)
{
...
}
我想在 StringComparisonOperator
中支持以下类型
enum StringComparisonOperator {
case equals
case contains
case beginsWith
case endsWith
case like
case matches
}
Swift 提供 ==
(等号)、.contains
(包含)、.hasPrefix
(beginsWith)和 .hasSuffix
(endsWith) .
但是,我对 like
和 matches
选项一无所知。有人可以帮助我吗?
您可以为 like 和 matches
创建中缀运算符
infix operator =~
func =~ (string: String, regex: String) -> Bool {
return string.range(of: regex, options: .regularExpression) != nil
}
并像这样使用:"abcd" =~ "ab*cd"
我想写一个可以对两个字符串进行比较的函数。
像这样:
func stringComparison(_ str1:String, comparisonOperator:StringComparisonOperator, _ str2:String)
{
...
}
我想在 StringComparisonOperator
enum StringComparisonOperator {
case equals
case contains
case beginsWith
case endsWith
case like
case matches
}
Swift 提供 ==
(等号)、.contains
(包含)、.hasPrefix
(beginsWith)和 .hasSuffix
(endsWith) .
但是,我对 like
和 matches
选项一无所知。有人可以帮助我吗?
您可以为 like 和 matches
创建中缀运算符infix operator =~
func =~ (string: String, regex: String) -> Bool {
return string.range(of: regex, options: .regularExpression) != nil
}
并像这样使用:"abcd" =~ "ab*cd"