我需要通过给两种可能性在(如果)语句如字符串中的每个字符比较字符串:
let str = "2 3 1 2"
if str == "(1||2) (2||3) (1||2) (1||2)" {
//Do Something
}
我知道代码编写不正确,但只是为了明白我的意思。
我以前在VB例如,使用(Like运算符):
Dim s As String = "2 3 1 2"
If s Like "[1-2] [3-4] [2-3] [1-2]" Or s Like "[1-2] [1-2] [2-3] 2" Then
//Do something
End If
我找不到在迅速类似的事情。
请帮帮忙,谢谢。
您所描述的问题是哭出来的使用解决了正则表达式 。
我最后一次看,斯威夫特不支持正则表达式,但它允许使用NSRegularExpression
。 见正则表达式在斯威夫特的正则表达式类的一个实例。
所以,你会写出来像
if Regex("[12] [23] [12] [12]").test("2 3 1 2") {
println("matches pattern")
}
有关这个主题的另一篇博客是干净的正则表达式斯威夫特 。
看起来你所要求的是对正则表达式的支持。 他们不直接斯威夫特存在(没有?)。 但是,你可能想看看在斯威夫特正则表达式? 和http://nomothetis.svbtle.com/clean-regular-expressions-using-conversions 。