Nachdem mein Webformular übergeben wurde, wird ein Regex auf die Benutzereingabe auf der Serverseite angewendet (über PHP). Ich möchte den identischen Regex in Echtzeit auf der Client-Seite laufen lassen, um dem Benutzer zu zeigen, was die wirkliche Eingabe sein wird. Dies entspricht in etwa dem Abschnitt "Vorschau" auf der Seite "Fragen stellen" in Stack Overflow, mit Ausnahme von PHP anstelle von .NET im Backend.
Was muss ich beachten, damit meine regulären Ausdrücke für PHP und JavaScript genau gleich funktionieren?
Hehe das wurde vor einiger Zeit gefragt und Jeff hat darauf hingewiesen: Ссылка .
>Es gibt einen Vergleich der Funktionen für reguläre Ausdrücke zwischen Tools und Sprachen.
Wenn die regulären Ausdrücke einfach sind, sollte es kein Problem geben, da die Grundlagen regulärer Ausdrücke in den meisten Implementierungen üblich sind.
Für Einzelheiten wäre es am besten, beide Implementierungen zu untersuchen:
Die Implementierung von Javascripts ist wahrscheinlich die grundlegendere. Wenn Sie also einen Ansatz mit dem kleinsten gemeinsamen Nenner anstreben, dann zielen Sie auf diesen.
Ich habe festgestellt, dass verschiedene Implementierungen regulärer Ausdrücke oft feine Unterschiede darin haben, was genau sie unterstützen. Wenn Sie sicher sein wollen, dass das Ergebnis sowohl im Frontend als auch im Backend das gleiche ist, sollten Sie einen Ajax-Aufruf an Ihr PHP-Backend richten und für beide Regex-Auswertungen den gleichen PHP-Code verwenden.
>Sowohl der Regex von JavaScript als auch der PHP-Parameter preg_match basieren auf Perl, daher sollte es keine Portierungsprobleme geben. Beachten Sie jedoch, dass JavaScript nur eine Teilmenge der von Perl unterstützten Modifikatoren unterstützt.
Weitere Informationen zum Vergleich der beiden:
Was die Versandmethode betrifft, würde ich vorschlagen, dass Sie JSON , das schlankste Format für den Datenaustausch ab Datum (AFAIK) und direkt verwenden über eval () in ein JavaScript-Objekt übersetzt werden. Stellen Sie den bösen Jungen einfach durch eine AJAX -Sitzung, und Sie sollten darauf eingestellt sein, zu gehen.
Ich hoffe, das hilft:)
Tags und Links javascript php regex