سؤال

بعد إرسال نموذج الويب الخاص بي، سيتم تطبيق التعبير العادي على إدخال المستخدم من جانب الخادم (عبر PHP).أرغب في تشغيل التعبير العادي المتطابق في الوقت الفعلي من جانب العميل لتوضيح للمستخدم ماهية الإدخال الحقيقي.سيكون هذا مشابهًا إلى حد كبير لقسم المعاينة في صفحات طرح الأسئلة في Stack Overflow باستثناء وجود PHP في الواجهة الخلفية بدلاً من .NET.

ما الذي يجب أن أضعه في الاعتبار حتى تعمل تعبيرات PHP وJavaScript العادية بنفس الطريقة تمامًا؟

هل كانت مفيدة؟

المحلول

هيهي لقد تم طرح هذا السؤال منذ لحظات وأشار جيف:
http://www.regular-expressions.info/refflavors.html.

هناك مقارنة بين إمكانيات التعبير العادي عبر الأدوات واللغات.

نصائح أخرى

إذا كانت التعبيرات العادية بسيطة، فلا ينبغي أن تكون هناك مشكلة، لأن أساسيات التعبيرات العادية شائعة عبر معظم التطبيقات.

للحصول على التفاصيل سيكون من الأفضل دراسة كلا التطبيقين:

http://www.regular-expressions.info/php.html

http://www.regular-expressions.info/javascript.html

من المحتمل أن يكون تطبيق Javascript هو الأكثر أساسية، لذلك إذا كنت تريد اتباع نهج القاسم المشترك الأدنى، فاستهدف هذا النهج.

لقد وجدت أن التطبيقات المختلفة للتعبيرات العادية غالبًا ما يكون لها اختلافات طفيفة فيما تدعمه بالضبط.إذا كنت تريد التأكد تمامًا من أن النتيجة ستكون هي نفسها في كل من الواجهة الأمامية والخلفية، فسيكون الخيار الأكثر حفظًا هو إجراء استدعاء Ajax لواجهة PHP الخلفية الخاصة بك واستخدام نفس الجزء من كود PHP لكلا تقييمي regex.

@LKM AJAX هو الفائز الواضح هنا.سيسمح لك هذا أيضًا بمتابعة جاف مبدأ.لماذا تريد كتابة كود التحليل الخاص بك في جافا سكريبت؟ و بي أتش بي؟

يعتمد كل من التعبير العادي لـ JavaScript وpreg_match لـ PHP على لغة Perl، لذلك لا ينبغي أن تكون هناك أي مشكلات في النقل.ومع ذلك، لاحظ أن Javascript تدعم فقط مجموعة فرعية من المعدلات التي يدعمها Perl.

لمزيد من المعلومات للمقارنة بين الاثنين:

بالنسبة لطريقة التوصيل أنصحك باستخدامها JSON, ، وهو أنحف تنسيق لتبادل البيانات حتى الآن (AFAIK) ويمكن ترجمته مباشرة إلى كائن JavaScript من خلال eval().فقط ضع هذا الولد الشرير من خلال اياكس الجلسة ويجب أن تكون مستعدًا للانطلاق.

آمل أن يساعد هذا :)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top