Awk String -Funktionen

Awk String -Funktionen

Awk ist ein leistungsstarkes Textverarbeitungstool, das häufig zum Manipulieren und Analysieren von Daten in UNIX- und Linux -Umgebungen verwendet wird. Eine der Hauptmerkmale von AWK ist die Fähigkeit, Saiten mithilfe einer Vielzahl von integrierten Funktionen zu manipulieren.

In diesem Artikel werden wir einige der am häufigsten verwendeten String -Manipulationen in awk untersuchen.

  • Länge (Zeichenfolge): Gibt die Länge der angegebenen Zeichenfolge zurück.
  • Substr (String, Start, Länge): Gibt eine Substring der angegebenen Zeichenfolge ab, beginnend an der angegebenen Position und mit der angegebenen Länge.
  • Index (String, Substring): Gibt die Position des ersten Auftretens des angegebenen Substrings in der angegebenen Zeichenfolge zurück.
  • Split (String, Array, Trennzeichen): Teilt die angegebene Zeichenfolge in ein Array von Substrings unter Verwendung des angegebenen Separators auf, um zu bestimmen, wo die Zeichenfolge geteilt werden soll.
  • sub (regexp, Ersatz, Zeichenfolge): Dies ersetzt die erste auftretende reguläre Ausdrucksübereinstimmung aus der Zeichenfolge durch „Ersatz“.
  • GSUB (Regexp, Ersatz, Zeichenfolge): Ersetzt alle Vorkommen des angegebenen regulären Ausdrucks in der angegebenen Zeichenfolge durch die angegebene Ersatzzeichenfolge.
  • Match (String, Regexp): Sucht die angegebene Zeichenfolge nach dem ersten Auftreten des angegebenen regulären Ausdrucks und gibt die Position des Spiels und die Länge des übereinstimmenden Substrings in einem Array zurück.
  • Tolower (String) und Toupper (String): Wandelt alle Groß- oder Kleinbuchstaben in der angegebenen Zeichenfolge in Kleinbuchstaben- oder Großbuchstaben um.

Lassen Sie uns alle String -Funktionen einzeln verstehen, einschließlich des Beispiels:

1. Länge (Zeichenfolge)

Der Länge (Zeichenfolge) Die Funktion gibt die Länge der angegebenen Zeichenfolge zurück. Zum Beispiel, wenn wir die Länge der Zeichenfolge finden möchten "Hallo Welt!”, Wir können den folgenden Code verwenden:

awk 'begin printlänge ("Hallo, Welt!") '
1awk 'begin printlänge ("Hallo, Welt!") '

Dies wird ausgeben "13", Seit der String „Hallo, Welt!Hat 13 Zeichen.

2. Substr (String, Start, Länge)

Der Substr (String, Start, Länge) Die Funktion gibt eine Substring der angegebenen Zeichenfolge zurück, beginnend an der angegebenen Position und mit der angegebenen Länge. Zum Beispiel, wenn wir die ersten 5 Zeichen der Zeichenfolge extrahieren wollen "Hallo Welt!”, Wir können den folgenden Code verwenden:

awk 'begin print substr ("Hallo, Welt!", 15)'
1awk 'begin print substr ("Hallo, Welt!", 15)'

Dies wird ausgeben "Hallo", Da die ersten 5 Zeichen der Zeichenfolge "Hallo" sind.

3. Index (String, Substring)

Der Index (String, Substring) Die Funktion gibt die Position des ersten Auftretens des angegebenen Substrings in der angegebenen Zeichenfolge zurück. Zum Beispiel, wenn wir die Position der Substring „Welt“ in der Zeichenfolge „Hallo, Welt“ finden möchten!”, Wir können den folgenden Code verwenden:

awk 'begin print Index ("Hallo, Welt!", "Welt")'
1awk 'begin print Index ("Hallo, Welt!", "Welt")'

Dies wird ausgeben "8", Da die Substring „Welt“ an der 8. Position in der Saite beginnt.

4. Split (String, Array, Trennzeichen)

Der Split (String, Array, Trennzeichen) Die Funktion spaltet den angegebenen Zeichenfolge in ein Array von Substrings unter Verwendung des angegebenen Trennzeichens, um zu bestimmen, wo die Zeichenfolge geteilt werden soll. Wenn wir beispielsweise die Zeichenfolge „Apple, Banana, Orange“ in ein Array von Untergräben unter Verwendung des Kommas als Trennzeichen aufteilen möchten, können wir den folgenden Code verwenden:

awk 'begin split ("Apple, Banane, Orange", a, ","); für (i in a) drucken Sie a [i] '
1awk 'begin split ("Apple, Banane, Orange", a, ","); für (i in a) drucken Sie a [i] '

Dies wird ausgeben:

Output Apple Banana Orange 

5. sub (regexp, Ersatz, Zeichenfolge)

Der sub (regexp, Ersatz, Zeichenfolge) Die Funktion ersetzt das erste Auftreten des angegebenen regulären Ausdrucks in der angegebenen Zeichenfolge durch den angegebenen Ersatzzeichenfolge. Zum Beispiel, wenn wir nur die ersten Ereignisse des Buchstabens „O“ in der Zeichenfolge „Hallo, Welt“ ersetzen möchten!"Mit dem Buchstaben" A "können wir den folgenden Code verwenden:

awk 'begin sub ("o", "a", "Hallo, Welt!"); drucken'
1awk 'begin sub ("o", "a", "Hallo, Welt!"); drucken'

Dies wird ausgeben „Hella, Welt!”, Da nur das erste Auftreten des Buchstabens „O“ durch den Buchstaben „A“ ersetzt wurde.

6. GSUB (Regexp, Ersatz, Zeichenfolge)

Die Funktion GSUB (Regexp, Ersatz, String) ersetzt alle Vorkommen des angegebenen regulären Ausdrucks in der angegebenen Zeichenfolge durch die angegebene Ersatzzeichenfolge. Zum Beispiel, wenn wir alle Vorkommen des Buchstabens „O“ in der Zeichenfolge „Hallo, Welt“ ersetzen wollen!"Mit dem Buchstaben" A "können wir den folgenden Code verwenden:

awk 'begin gsub ("o", "a", "Hallo, Welt!"); drucken'
1awk 'begin gsub ("o", "a", "Hallo, Welt!"); drucken'

Dies wird „Hella, Warld ausgeben!"Da alle Vorkommen des Buchstabens" O "durch den Buchstaben" A "ersetzt wurden.

7. Match (String, Regexp)

Der Match (String, Regexp) Die Funktion durchsucht die angegebene Zeichenfolge nach dem ersten Auftreten des angegebenen regulären Ausdrucks und gibt die Position des Spiels und die Länge des übereinstimmenden Substrings in einem Array zurück. Zum Beispiel, wenn wir die Position und Länge des ersten Auftretens des Wortes „Welt“ in der Zeichenfolge „Hallo, Welt“ finden möchten!”, Wir können den folgenden Code verwenden:

awk 'begin match ("Hallo, Welt!", /World /); drucken rstart, rlength '
1awk 'begin match ("Hallo, Welt!", /World /); drucken rstart, rlength '

Dies wird ausgeben "8 5", Da das Wort „Welt“ an der 8. Position in der Zeichenfolge beginnt und eine Länge von 5 Zeichen hat.

8. Tolower (String) und Toupper (String)

Der Tolower (String) Die Funktion wandelt alle Großbuchstaben in der angegebenen Zeichenfolge in Kleinbuchstaben um. Zum Beispiel, wenn wir die Zeichenfolge „Hallo, Welt konvertieren wollen!”In allen Kleinbuchstaben können wir den folgenden Code verwenden:

awk 'begin print tolower ("Hallo, Welt!") '
1awk 'begin print tolower ("Hallo, Welt!") '

Dies wird ausgeben "Hallo Welt!”.

Wenn wir dieselbe Zeichenfolge in alle Großbuchstaben konvertieren möchten, können wir den folgenden Code verwenden:

awk 'begin print toupper ("Hallo, Welt!") '
1awk 'begin print toupper ("Hallo, Welt!") '

Dies wird ausgeben "HALLO WELT!”.

Abschluss

In diesem Artikel haben wir einige der am häufigsten verwendeten String -Manipulationen in awk untersucht. Diese Funktionen ermöglichen es uns, eine Vielzahl von Aufgaben auszuführen, z. Indem wir diese Funktionen beherrschen, können wir mit Textdaten in UNIX- und Linux -Umgebungen besser arbeiten und unsere Produktivität als Datenanalysten und Programmierer erhöhen.