Frage

Ich habe gerade die Perldocs durchgesehen, als ich in einem Beispiel darauf gestoßen bin ( http://perldoc.perl.org/perlre.html#Regular-Expressions - siehe Beispiel für Erfassungsgruppen )

"aa" =~ /${a}/; # True
"aa" =~ /${b}/; # True
"aa0" =~ /${a}0/; # False!
"aa0" =~ /${b}0/; # True
"aa\x08" =~ /${a}0/; # True!
"aa\x08" =~ /${b}0/; # False

Ich konnte keine Dokumentation darüber finden, was diese Syntax bedeutet.

Was bedeutet der reguläre Ausdruck / $ {a} / in diesem Zusammenhang?

War es hilfreich?

Lösung

$ mit Klammern Vermeiden Sie die Mehrdeutigkeit variabler Namen.So dass: generasacodicetagpre.

Auch in dem von Ihnen angegebenen Link gibt es eine Definition für $ A und $ B, aber Sie haben vergessen, hier zu kopieren.

Andere Tipps

Die Klammern werden benötigt, um zu unterscheiden $a von $a0.Beachten Sie, dass der Tokenizer gierig ist, also ist ein Variablenname der ngste reihenfolge möglich.Wenn bei einer Variableninterpolation ein anderes Alphabet oder eine andere Zahl folgt, benötigen Sie die ${name} Syntax.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top