Как мы можем сопоставить строковый шаблон как регистрационный номер типа aa12ss9098? - PullRequest
0 голосов
/ 17 мая 2019

Я пытаюсь сопоставить строковый шаблон, который содержит два символа, два числовых значения, два символа и четыре числовых значения.Может кто-нибудь, пожалуйста, помогите мне

EG: - AP04ST9099

Ниже приведен код, который я пытаюсь для этого

^\\[a-z]{2}-\\d{2}-\\[a-z]{2}-\\d{4}$

Ответы [ 3 ]

0 голосов
/ 17 мая 2019

Swift 5 Вы можете создать регулярное выражение и подтвердить строку регулярным выражением. Регулярное выражение:

func isValidValue(passedValue: String) -> Bool {
  let valueRegEx = "^[A-Z]{2}+[0-9]{2}+[A-Z]{2}+[0-9]{4}"

  let valueTest = NSPredicate(format:"SELF MATCHES %@", valueRegEx)

  return valueTest.evaluate(with: passedValue)
}

print(isValidValue(passedValue: "AP04ST9099"))
0 голосов
/ 17 мая 2019

Сортировщик один:

func isValidValue(passedValue: String) -> Bool {

    return NSPredicate(format:"SELF MATCHES %@","^[A-Z]{2}+[0-9]{2}+[A-Z]{2}+[0-9]{4}" ).evaluate(with: passedValue)
}

print(isValidValue(passedValue: "AP04ST9099"))
0 голосов
/ 17 мая 2019

Ниже приведено регулярное выражение с решением.

extension String {
    func matches(_ regex: String) -> Bool {
        return self.range(of: regex, options: .regularExpression, range: nil, locale: nil) != nil
    }
}


"AP04ST9099".matches("^[A-Za-z]{2}\\d{2}[A-Za-z]{2}\\d{4}$")//true
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...