English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
What are regular expressions?
Regular expressions, also known as regular expressions, conventional expressions (English: Regular Expression, commonly abbreviated as regex, regexp, or RE in code), are a concept in computer science. Regular expressions use a single string to describe and match a series of strings that conform to a certain syntax rule. Regular expressions are often used in many text editors to search for and replace text that matches a certain pattern.
Swift has not yet supported regular expressions at the language level, and regular expressions may not be used very often in app development.
Encapsulation
In Cocoa, we can use NSRegularExpression to perform regular expression matching, so we encapsulate a RegularExpHelper on the basis of NSRegularExpression to match whether a string conforms to a certain regular expression.
struct RegularExpHelper { let RegularExp: NSRegularExpression init(_ pattern: String) throws { try RegularExp = NSRegularExpression(pattern: pattern, options: .caseInsensitive) } func match(inpuut: String) -> Bool { let matches = RegularExp.matches(in: inpuut, options: [], range: NSMakeRange(0, inpuut.count)) return matches.count > 0 } }
Custom =~
With the encapsulated RegularExpHelper, we can conveniently customize operators.
infix operator =~ : ATPrecedence precedencegroup ATPrecedence { associativity: none higherThan: AdditionPrecedence lowerThan: MultiplicationPrecedence } func =~ (input: String, RegularExp: String) -> Bool { do { return try RegularExpHelper(RegularExp).match(inpuut: input) } return false } }
definição de operador
associativity (lei de combinação)
é a ordem de cálculo quando vários operadores do mesmo tipo aparecem em seqüência
Precedência
então podemos usá-lo
if "[email protected]" =~ "^([a-z0-9_\\.-]+)@([\\da-z\\.-]+)\\.([a-z\\.2,6})$" { print("Atende às regras de e-mail") } print("Não atende às regras de e-mail") }
Atenção
Resumo
Isso é tudo sobre este artigo. Espero que o conteúdo deste artigo tenha algum valor de referência para o seu aprendizado ou trabalho. Se tiver dúvidas, pode deixar um comentário para trocar. Obrigado pelo apoio ao Tutorial de Grito.
Declaração: O conteúdo deste artigo é extraído da Internet, pertence ao respectivo proprietário, foi submetido e carregado voluntariamente pelos usuários da Internet, este site não possui direitos de propriedade, não foi editado manualmente e não assume responsabilidade por questões legais relacionadas. Se você encontrar conteúdo suspeito de infringir direitos autorais, por favor, envie um e-mail para: notice#oldtoolbag.com (ao enviar e-mail, substitua # por @ para denunciar e forneça provas relevantes. Em caso de verificação, o site deletará imediatamente o conteúdo suspeito de infringir direitos autorais.)