/ / Порівняйте рядок, надавши дві можливості для кожного символу в Swift - ios, xcode, swift

Порівняйте рядок, даючи дві можливості для кожного символу в Swift-ios, xcode, swift

Мені потрібно порівнювати рядок, надаючи дві можливості для кожного символу в рядку в операторі (якщо), наприклад:

let str = "2 3 1 2"
if str == "(1||2) (2||3) (1||2) (1||2)" {
//Do Something
}

Я знаю, що код не написаний правильно, але просто щоб зрозуміти, що я маю на увазі.

Я використовував (подібний оператор) у VB, наприклад:

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

Я не міг знайти нічого подібного в швидкому.

Будь ласка, допоможіть, спасибі.

Відповіді:

0 для відповіді № 1

Проблема, яку ви описуєте, - це виклик до вирішення проблеми регулярні вирази.

Останній раз, коли я дивився, Swift не підтримував регулярних виразів, але це дозволяє використовувати NSRegularExpression. Побачити Regex в Свіфт для прикладу класу Regex.

Таким чином, ви в кінцевому підсумку писати щось подібне

if Regex("[12] [23] [12] [12]").test("2 3 1 2") {
println("matches pattern")
}

Інший блог по цій темі Чисті регулярні вирази в Swift.


0 для відповіді № 2

Схоже, що ви просите, це підтримка регулярних виразів. Вони не існують безпосередньо в Swift (поки що?) RegEx у Свіфі? і http://nomothetis.svbtle.com/clean-regular-expressions-using-conversions .