Wie verwende ich egrep um die Liste der Wörter, die übereinstimmung mit einem regulären Ausdruck?

Muss ich verwenden Sie egrep um die Anzahl der Wörter, die strings enthalten, die mit einem regulären Ausdruck. Zum Beispiel, ich muss etwas tun, wie "Zählen Sie die Anzahl der Wörter mit drei aufeinanderfolgenden vokalen" (nicht genau, aber das ist der Kern von ihm).

Ich habe herausgefunden wie es Zeilen, die enthalten diese Worte, aber wenn ich das -w-tag ich bekomme ein egrep: illegal option -- w Fehler.

Hier ist der reguläre Ausdruck, den ich verwenden würde, um die Zeilen in dem oben beschriebenen Szenario, das scheint zu funktionieren:

egrep -i -c '[aeiou][aeiou][aeiou]' full.html

Mithilfe der -w tag mit diesem Befehl verursacht die Fehler, die ich oben aufgeführt, auch wenn ich hinzufügen \b-tags um das regex-Ausdruck. z.B.:

egrep -i -c -w '\b.*[aeiou][aeiou][aeiou].*\b' full.html

Was mache ich falsch?

EDIT: bei mir läuft dies unter Solaris 10 aus dem terminal.

  • Ich weiß nicht, aber [a|e|i|o|u]{3} wäre leichter zu Lesen
  • Keine Notwendigkeit für die Rohre in Charakter-Klassen, verwenden Sie einfach [aeiou]{3}.
  • Ich habe bearbeitet meine post, um es einfacher zu Lesen.
  • Hinzufügen der {3} - tag bewirkt, dass meine Befehle zurück, zählt von 0 an. Wieder hab ich, läuft dies unter Solaris 10, nicht Linux oder Unix.
Schreibe einen Kommentar