Alle String-Übereinstimmungen mit Regex in Go finden
Bei der Arbeit mit Strings in Go ist es oft notwendig, bestimmte Muster oder Teilstrings zu finden. Reguläre Ausdrücke bieten eine leistungsstarke Möglichkeit, Text abzugleichen und zu bearbeiten. Eine häufige Aufgabe besteht darin, alle Übereinstimmungen eines bestimmten Musters zu finden und sie in einem Slice oder Array zu speichern.
Problemstellung:
Gegeben sei eine Zeichenfolge mit geschweiften Klammern, die Teilzeichenfolgen einschließen Das Ziel besteht darin, alle Teilzeichenfolgen zwischen den geschweiften Klammern zu extrahieren und als Array zurückzugeben. Zum Beispiel mit der Zeichenfolge:
{city}, {state} {zip}
Wir müssen ein Array zurückgeben, das Folgendes enthält:
Lösung:
Zu erreichen Dazu können wir das Regexp-Paket von Go verwenden. Bei der Definition des regulären Ausdrucks sind jedoch einige wichtige Punkte zu beachten:
Hier ist der aktualisierte Go-Code:
package main import ( "fmt" "regexp" ) func main() { str := "{city}, {state} {zip}" // Define the regular expression pattern r := regexp.MustCompile(`{[^{}]*}`) // Find all matches matches := r.FindAllString(str, -1) // Print the matches for _, match := range matches { fmt.Println(match) } }
Regex-Aufschlüsselung:
Ausgabe:
{city} {state}
Das obige ist der detaillierte Inhalt vonWie extrahiere ich mit Gos Regex alle in geschweiften Klammern eingeschlossenen Teilzeichenfolgen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!