Unterscheiden sich die in regulären Ausdrücken verwendeten "Kontrollzeichen" stark von verschiedenen Implementierungen von Regex-Parsern (z. B. regex in Ruby, Java, C #, sed usw.)?
Zum Beispiel bedeutet in Ruby \D
not a digit
; Bedeutet es dasselbe in Java, C # und sed?
Ich denke, was ich frage ist, gibt es einen "Standard" für Regex 's, den alle Regex-Parser unterstützen?
Wenn nicht, gibt es eine gemeinsame Teilmenge, die gelernt und gemeistert werden sollte (und dann die parserspezifischen lernen, wenn sie auftreten)?
Siehe die Liste der grundlegenden Syntax auf regulary-expressions.info .
Und ein Vergleich der verschiedenen "Geschmacksrichtungen".
Es gibt einen gemeinsamen Kern, der sehr einfach ist. Es entspricht den regulären Ausdrücken, die in den ursprünglichen Softwaretools wie ed, grep, sed und awk implementiert sind. Das ist es wert, gelernt zu werden, denn die anderen Formate sind alle Supersätze von diesem. †
%Vor%† Ich habe Posix-Klammerausdrücke weggelassen, weil niemand sie verwendet und sie sich nicht in der Teilmenge befinden. Die Parens sind standardmäßig magisch, außer in den klassischen Ausdrücken.