So verwenden Sie Bash = ~ Regex, um mehrere Zeichenfolgen zu entsprechen

So verwenden Sie Bash = ~ Regex, um mehrere Zeichenfolgen zu entsprechen
Eines der leistungsstarken Merkmale von Bash ist die Fähigkeit, reguläre Ausdrücke zu verwenden, um Muster in Saiten abzustimmen, und es wird nützlich, wenn es sich um Textdaten in Skripten und die Automatisierung von Aufgaben handelt. In diesem Artikel werden wir untersuchen.

Was ist = ~ Regex in Bash

Mit dem Bash = ~ Operator können wir einen regulären Ausdruck gegen eine Zeichenfolge übereinstimmen, und er gibt true zurück, wenn der Ausdruck mit der gesamten Zeichenfolge übereinstimmt, im anderen Fall gibt er false zurück.

Verwenden Sie Bash = ~ Regex, um mehrere Zeichenfolgen zu entsprechen

Beim Bash -Scripting wird der Operator "=" verwendet, um einen regulären Ausdruck gegen eine Zeichenfolge abzustimmen. Mit Regex können Sie eine einzelne Zeichenfolge oder ein Muster von Strings übereinstimmen. Es gibt jedoch Situationen, in denen Sie mehrere Zeichenfolgen in einer einzigen Operation übereinstimmen müssen. Hier finden Sie die Syntax für die Übereinstimmung mehrerer Zeichenfolgen:

[[$= ~ $]]]

Um weiter zu veranschaulichen, habe ich ein Beispiel -Bash -Skript angegeben, das zwei Zeichenfolgen und fünf Übereinstimmungen enthält, die ich machen möchte. Im Folgenden finden Sie das jeweilige Skript:

#!/Bin/Bash
MyString = "Hallo und Willkommen bei LinuxHint.com "
MyString = "Grüße und Willkommen bei Linux Mint"
musters = ("Hallo" "Begrüßung" "LinuxHint" "Minze" "Apple")
Matched1 = 0
Matched2 = 0
für Muster in "$ musters [@]"
Tun
wenn [[$ mystring = ~ $ muster]]; Dann
Echo "Der String1 entspricht dem Muster: $ muster"
Matched1 = 1
fi
wenn [[$ mystring = ~ $ muster]]; Dann
Echo "Der String2 entspricht dem Muster: $ Muster"
Matched2 = 1
fi
Erledigt

Dieser Code definiert zwei Zeichenfolgen MyString und MyString und ein Array -Muster, das die übereinstimmenden Muster enthält. Es schaltet sich dann durch die Muster und Überprüfungen, wenn jeder in MyString und MyString verwendet wird, wenn Anweisungen mit dem = Operator. Wenn eine Übereinstimmung in einer Zeichenfolge gefunden wird, zeigt der Code eine Meldung über Muster -Übereinstimmungen an, während in einer Zeichenfolge keine Übereinstimmungen gefunden werden, druckt der Code eine Nachricht, die angibt, dass die Zeichenfolge nicht mit einem der angegebenen Muster übereinstimmt.

Die übereinstimmende = 1 -Anweisung im In der für die für die Loop angegeben.Wenn die übereinstimmende Variable nach der Überprüfung aller Muster 0 bleibt, bedeutet dies, dass keiner der Muster in der Eingangszeichenfolge gefunden wurde, und hier ist die Ausgabe für den Code:

Abschluss

Bash Scripting bietet eine Vielzahl von Optionen, um die Aufgaben zu automatisieren. Der Bash = ~ -Portler mit regulären Ausdrücken wird verwendet, um mehrere Zeichenfolgen zu entsprechen, und diese Anleitung zeigt, wie dieser Bediener mithilfe eines Beispiels verwendet wird, das mit zwei Stichproben mit zwei Zeichenfolgen übereinstimmt.