Erzielen von Groß- und Kleinschreibung bei Regex in Go
In der Webentwicklung erfordert die Durchführung von Regex-Operationen häufig die Verarbeitung von Groß- und Kleinbuchstaben. In Go verfügt die regexp.Compile()-Methode nicht von Natur aus über die Fähigkeit, die Groß-/Kleinschreibung zu berücksichtigen.
Ein gängiger Ansatz besteht darin, beide Fälle explizit zu behandeln:
regexp.Compile("[a-zA-Z]")
Dieser Ansatz wird jedoch umständlich, wenn der reguläre Ausdruck dynamisch aus einer vom Benutzer bereitgestellten Zeichenfolge erstellt wird.
Um echte Groß-/Kleinschreibung zu erreichen, bietet Go eine Lösung: Hinzufügen des (?i) Flag an den Anfang des regulären Ausdrucks setzen. Dieses Flag weist die Regex-Engine an, Groß-/Kleinschreibung zu ignorieren.
So würde es in Ihrem Beispiel funktionieren:
reg, err := regexp.Compile("(?i)" + strings.Replace(s.Name, " ", "[ \._-]", -1))
Dieser Ansatz bietet eine saubere und effiziente Lösung für Regex-Operationen, bei denen die Groß-/Kleinschreibung nicht berücksichtigt wird. Es vermeidet die Notwendigkeit einer manuellen Groß- und Kleinschreibung und stellt sicher, dass der reguläre Ausdruck sowohl Groß- als auch Kleinbuchstaben genau übereinstimmt. Weitere Informationen zu Flags, die in Regex verwendet werden, finden Sie in der Dokumentation zum Regexp/Syntax-Paket.
Das obige ist der detaillierte Inhalt vonWie erreicht man in Go reguläre Ausdrücke ohne Berücksichtigung der Groß- und Kleinschreibung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!