Markus Baersch

Analytics · Beratung · Lösungen

Start » Blog » Google / Webtools

17.04.2021

In der letzten Woche sind eine ganze Menge Artikel dazu erschienen, dass - und wie - man in der Google Search Console nun Reguläre Ausdrücke (kurz "RegEx") nutzen kann, um Daten wie URLs und Suchanfragen zu filtern. Warum also noch einer? Weil gerade das Beispiel der W-Fragen für alle SEOs, Content Marketer und andere einen hohen Praxisbezug hat und daher viele neue Passagiere auf den RegEx-Zug aufgesprungen sind. Um das Potential zu nutzen, sollte man die genutzten Lösungen a) grob verstehen und damit b) nach eigenen Anforderungen anpassen können. Genau das soll dieser Beitrag anhand eines konkreten Beispiels zeigen.

Der Ausgangspunkt: "Wer, was, wo, wann, warum, wie?"

Einer meiner ersten Berührungspunkte mit W-Fragen-Filtern für die Search Console war ein Post bei LinkedIn, in dem sich folgender Filter fand, welcher die Einträge mit den o. a. Fragewörtern aus der Liste der Suchbegriffe in der GSC hervorbringt:

^(wer|was|wo|wann|warum|wie)[" "]

Übersetzt bedeutet es: Suche mir alles, was mit einem der durch "|" getrennten Begriffe beginnt. Die Klammer kann man also als "wer ODER was ODER wo etc." lesen. Dahinter steht eine Gruppe von Zeichen, die genau so vorkommen müssen. Diese beinhaltet nur ein Leerzeichen, also muss nach den Suchworten ein Leerzeichen kommen, um eine Übereinstimmung zu liefern. und das "^" am Anfang des Suchfilters ist ein Platzhalter für "den Anfang". Meint: vor den Begriffen aus der Klammer soll nichts anderes stehen.

Das funktioniert prima. Das Ergebnis zeigt alle Anfragen, die mit einem dieser Fragewörter beginnen. Bevor wir die Liste der Begriffe ergänzen, um mehr Fragen damit finden zu können, ändern wir zwei Kleinigkeiten:

Kleinkram

Die erste Anpassung klingt eher unnötig, ist aber angesichts der Länge, die das Endergebnis erzielen wird, dennoch m. E. hilfreich. Selbst wenn es keinen Preis dafür gibt, RegEx möglichst kurz zu gestalten und Performance-Optimierung hier kein Thema ist: Wir haben das Glück, dass alle unsere W-Fragen (wie der Name schon sagt) mit einem "W" beginnen. Also könnten wir das "W" aller Fragebegriffe aus der Klammer ziehen, in der die durch ein "|" getrennten Varianten der Begriffe stehen, die wir suchen wollen.

^w(er|as|o|ann|arum|ie)[" "]

Mein zweiter Gedanke war, dass es andere Möglichkeiten zur Wort-Trennung als ein Leerzeichen gibt. Umbrüche, Tabs etc. sind aber in Suchanfragen in der GSC nicht zu erwarten. Daher ist das [" "] im obigen Filter auch vollkommen in Ordnung. Ich finde dennoch, dass es der Lesbarkeit nicht sonderlich schadet, wenn wir das Konstrukt am Ende durch den in RegEx üblichen und vielseitigeren Platzhalter "\s" ersetzen. Der steht für eine ganze Menge an "Whitespace" und deckt das Leerzeichen locker mit ab.

^w(er|as|o|ann|arum|ie)\s

Damit haben wir den ganzen Kram nur etwas kürzer gemacht. Die Funktion bleibt aber die Gleiche. Jetzt geht es eher darum, die Menge an Fragen zu erhöhen, die man mit dem Filter erwischt.

Wieso, weshalb, warum?

Genau: Die Sesamstraße fehlt ja noch in der Liste! Also fügen wir sie hier hinzu.

^w(er|as|o|ann|ieso|eshalb|arum|ie)\s

Womit, wodurch, wovon?

Das sind natürlich immer noch nicht alle Wörter, die unsere vielseitige Sprache anbietet, um Fragen zu stellen. Selbst "nur" W-Fragen. Also bauen wir die Liste aus:

^w(er|as|o|ann|ieso|eshalb|arum|ie|omit|odurch|ovon)\s

Was ist mit "Welche" & Co.?

Wenn man damit einmal anfängt, kommen weitere Kandidaten schnell dazu. Wir lassen die Liste also etwas weiter wachsen. Da "welche" als "welcher, welches, welchen, welchem" durch seine Natur ein paar Spielarten mehr hat, ziehen wir diese alle in eine verkürzte RegEx Bedingung zusammen. Wollten wir nur diese fünf Varianten von "welche" filtern, können wir unter Anwendung der aus dem obigen Ausgangsfilter bekannten Dinge ableiten, wie das aussehen kann... wenn man sich noch das "?" dazu nimmt. Dieser Platzhalter bezieht sich auf das davor stehende Element (also eine Gruppe, ein Zeichen oder ein anderer Platzhalter) und besagt, dass dieses Element "mindestens genau einmal" vorkommen muss. Also entweder einmal oder gar nicht. Sehr praktisch und ähnlich wie sein guter Kumpel "*", der "mindestens einmal" bedeutet, so dass das Element davor nicht, einmal oder auch mehrfach vorkommen darf. Uns reicht hier aber ein Fragezeichen, um  aus "welche oder welcher oder welches oder welchen oder welchem" das hier zu machen:

welche(r|s|n|m)?

Es muss also "welche" vorkommen und danach darf ein r, s, n oder m folgen; muss aber nicht. Verbauen wir das in unseren Suchfilter, sieht dieser nun so aus:

^w(er|as|o|ann|ieso|eshalb|arum|ie|omit|odurch|ovon|elche(r|s|n|m)?)\s

Weitere W-Fragen?

Mir sind nur noch "wessen" und "wem" eingefallen und so habe ich diese noch hinzugefügt:

^w(er|as|o|ann|ieso|eshalb|arum|ie|omit|odurch|essen|em|ovon|elche(r|s|n|m)?)\s

...und in der Mitte?

Bisher haben wir nur Fundstellen erhalten, wenn das Fragewort am Anfang der Suchanfrage stand. Bei welchen Suchanfragen würde das nicht helfen? Zum Beispiel beim vorstehenden Satz. Da dieser mit "Bei welchen" beginnt, wird die Bedingung aus dem Filter, dass das W-Fragewort am Anfang steht, eben nicht erfüllt. Wir könnten nun unsere Bedingung anpassen und am Anfang genau das machen, was wir am Ende schon tun: ein Leerzeichen (Whitespace) suchen. Das sähe dann so aus:

\sw(er|as|o|ann|ieso|eshalb|arum|ie|omit|odurch|essen|em|ovon|elche(r|s|n|m)?)\s

Gibt man den Filter so ein, findet man aber leider nur noch die Fragen, die das Fragewort im Text enthalten, aber nicht mehr diejenigen, die mit den Fragewörtern beginnen. Hier ist die Lösung ebenso schon bekannt: Wir bilden eine Gruppe. An Anfang lassen wir also entweder den Platzhalter für den Satzanfang "^" oder einen beliebigen Whitespace als Platzhalter für die Leerzeichen "\s" zu. Als Gruppe macht das "(\s|^)". Packen wir das alles zusammen, bekommen wir eine ziemlich umfangreiche Sammlung an W-Fragen:

(\s|^)w(er|as|o|ann|ieso|eshalb|arum|ie|omit|odurch|essen|em|ovon|elche(r|s|n|m)?)\s

Zugegeben: das Ding ist etwas länger als der Ausgangsfilter, aber dafür bekommen wir nun deutlich mehr Fragen aus der Liste und vielleicht (hoffentlich) ist durch den schrittweisen Aufbau etwas Motivation entstanden, sich auf RegEx einzulassen.

Ist das nun die "optimale" Lösung?

Nein, vermutlich nicht. Denn ich muss bekennen: Ich arbeite selbst ebenfalls "selten genug" damit, dass ich immer wieder Cheat-Sheets und Blicke auf vergangene eigene Filter benötige, um ein Problem zu lösen. Oder StackOverflow. Oder das unvergleichlich nützliche RegEx101, wo man Dinge gleich ausprobieren kann. Das ist keine Schande! Aber im Hinterkopf zu haben, wie nützlich RegEx sein können, ist immer eine gute Idee... und jetzt kann man sie eben in der GSC nutzen. Nicht nur in den Suchanfragen, sondern auch den Seiten. Die gute Sache ist, dass wir uns nicht mit Optimierung rumschlagen müssen und i. d. R. mit wenigen Regeln und Platzhaltern zurechtkommen werden. Hirnverrenkungen wie "lookahead" oder "lookbehind" brauchen wir auch nicht (und können in der GSC offenbar derzeit gar nicht genutzt werden).

Ich wünsche viel Erfolg damit und coole Fundstücke in der Search Console!

© 2001 - 2021 Markus Baersch