تم تحديث ممارسة JavaScript العادية (سيتم تحديثها بشكل مستمر على أساس الكتابة الأخيرة)
1.
مُنشئ التعبير العادي: regexp جديد ("نمط" [، "أعلام"]) ؛
وظيفة متغير استبدال التعبير العادي: StringObj.replace (regexp ، استبدال النص) ؛
وصف المعلمة:
نمط - نص تعبير منتظم
أعلام - إذا كانت موجودة ، ستكون القيمة التالية:
G: المباراة العالمية
أنا: تجاهل القضية
GI: المزيج أعلاه
// يتم استخدام المثال التالي للحصول على معلمتين من عنوان URL وإرجاع urlvar الحقيقي قبل urlrewrite reg = new regexp ("(http://www.qidian.com/bookreader/)(//d+) ،(//d+).aspx" ، "GMI") ؛ url = "http://www.qidian.com/bookReader/1017141،20361055.aspx" ؛ // الطريقة 1 ، الأبسط والأكثر استخدامًا بشكل شيوع ، alert rep = url.replace (reg ، rep2 = url.replace (reg ، function (m ، p1 ، p2 ، p3) {return p1+"showbook.aspx؟ bookid ="+p3+"& chappeid ="+p3}) ؛ ALERT (REP2) ؛ // method 3 ، استخدم وظيفة الاتصال مع المعلمات غير المحملة var3 = url.replace args [1]+"showbook.aspx؟ bookid ="+args [2]+"& chagepid ="+args [3] ؛}) ؛ ALERT (REP3) ؛ // الطريقة 4 // 4 تشبه الطريقة 3. بالإضافة إلى إرجاع السلسلة التي تم استبدالها ، يمكنك أيضًا الحصول على المعلمة var bookid ؛ var chappeid ؛ function captext () {var args = mations ؛ bookid = args [2] ؛ chappleid = args [3] ؛ إرجاع args [1]+"showbook.aspx؟ bookid ="+args [2]+"& chappeid ="+args [3] ؛ regexp ("(http://www.qidian.com/bookreader/)(//d+) ،(//d+).aspx" ، "gmi") ؛ reg3 تنبيه (regexp. $ 2) ؛ تنبيه (regexp. $ 3) ؛2. اختبار اختبار مطابقة EXEC الأكثر استخدامًا استبدال طرق 6
1) اختبار تحقق مما إذا كانت السلسلة المحددة موجودة
var data = "123123 ″ ؛
var recat = /123 /gi ؛
التنبيه (recat.test (data)) ؛ //حقيقي
// تحقق مما إذا كان الحرف موجودًا في النزول ، فأنا حساس للحالة
2) exec إرجاع قيمة الاستعلام
var data = "123123،213،12312،312،3 ، cat ، cat ، dsfsdfs ،" ؛
var recat = /cat /i ؛
التنبيه (recat.exec (البيانات)) ؛ //قطة
3) المباراة تحصل على صفيف الاستعلام
var data = "123123،213،12312،312،3 ، cat ، cat ، dsfsdfs ،" ؛
var recat = /cat /gi ؛
var arrmactches = data.match (recat)
لـ (var i = 0 ؛ i <arrmactches.length ؛ i ++)
{
تنبيه (arrmactches [i]) ؛ // القط
}
4) موقف البحث عن إرجاع البحث يشبه الفهرس
var data = "123123،213،12312،312،3 ، cat ، cat ، dsfsdfs ،" ؛
var recat = /cat /gi ؛
التنبيه (data.search (recat)) ؛ // 23
5) استبدل حرف الاستبدال باستخدام استبدال منتظم
var data = "123123،213،12312،312،3 ، cat ، cat ، dsfsdfs ،" ؛
var recat = /cat /gi ؛
ALERT (data.replace (recat ، "libinqq")) ؛
6) انقسام باستخدام صفيف التجزئة العادية
var data = "123123،213،12312،312،3 ، cat ، cat ، dsfsdfs ،" ؛
var recat = // ،/؛
var arrdata = data.split (recat) ؛
لـ (var i = 0 ؛ i <errdata.length ؛ i ++)
{
تنبيه (arrdata [i]) ؛
}
3. جمع التعبيرات الشائعة الاستخدام:
"^// d + $" // عدد صحيح غير سلبي (عدد صحيح موجب + 0)
"^[0-9]*[1-9] [0-9]*$" // integer الإيجابية
"^((-// d+) | (0+)) $" // ليس عدد صحيح موجب (عدد صحيح سلبي+0)
"^-[0-9]*[1-9] [0-9]*$" // integer السلبية
"^-؟ // d+$" // integer
"^// D+(//.// D+)؟ $" // رقم نقطة عائم غير سلبي (رقم نقطة عائم إيجابي+0)
"^(([0-9]+//. [0-9]*[1-9] [0-9]*) | ([0-9]*[1-9] [0-9]*//. [0-9]+) | ([0-9]*[1-9]
// رقم النقطة العائمة الإيجابية
"^((-// d+(//.// d+)؟) |
"^(-(([0-9]+//. [0-9]*[1-9] [0-9]*) | ([0-9]*[1-9] [0-9]*//. [0-9]+) | ([0-9]*[1-9]
// رقم النقطة العائمة السلبية
"^(-؟ // d+) (//.// d+)؟ $" // رقم نقطة العائمة
"^[A-ZA-Z]+$" // سلسلة تتكون من 26 حرفًا إنجليزيًا
"^[az]+$" // سلسلة تتكون من 26 حرفًا إنجليزيًا
"^[az]+$" // سلسلة تتكون من 26 حرفًا إنجليزي
"^[A-ZA-Z0-9]+$" // سلسلة مكونة من أرقام و 26 حرفًا إنجليزيًا
"^// w+$"
"^[// W-]+(//. [// W-]+)*@[// W-]+(//. [// W-]+)+$" // عنوان البريد الإلكتروني
"^[a-za-z]+: // (// w+(-// w+)*) (//. (// w+(-// w+)*))*(//؟ // s*)؟ $" // url
"^[A-ZA-Z0-9 _]*$".
أساسيات التعبيرات العادية
^ يطابق مدخلات أو بداية خط ، /^ a / تطابق "A" ، ولكن ليس "A"
يطابق $ نهاية الإدخال أو الخط ، / A $ / يتطابق مع "A" ، ولكن ليس "A"
* تطابق metacharacter السابق 0 أو أكثر ، / ba* / سوف يتطابق مع B ، BA ، BAA ، BAA
+ تطابق metacharacter السابق أو أكثر من مرة ، / ba+ / سوف يتطابق مع BA ، BAA ، BAAA
؟ تطابق metacharacter السابق 0 أو 1 مرة ، / ba؟ / سوف تطابق B ، ba
(x) Match x يحفظ x في متغير يسمى $ 1 ... $ 9
x | y تطابق x أو y
{n} مطابقة بالضبط n times
{n ،} تطابق أكثر من n times
{N ، M} Match Nm Times
[XYZ] مجموعة الأحرف ، مطابقة أي حرف (أو metacharacter) في هذه المجموعة
[^XYZ] لا يتطابق مع أي حرف في هذه المجموعة
[/b] تطابق حرف المسافة الخلفية
/ب تطابق حدود الكلمة
/ب تطابق كلمة غير محفوظة
/cx هنا ، x هي حرف تحكم ، // سم/مطابقات ctrl-m
/D يتطابق مع حرف ، // d/=/[0-9]/
/D يتطابق مع حرف رقمي غير كلمة ، // d/=/[^0-9]/
/N يطابق شخصية سطر جديد
/R يطابق شخصية عودة النقل
/S يطابق حرف المساحة البيضاء ، بما في ذلك/n ،/r ،/f ،/t ،/v ، إلخ.
/S يطابق حرف غير وايتيس مساوٍ لـ/[^/n/f/r/t/v]/
/T يطابق حرف علامة التبويب
/V يتطابق مع حرف إعادة التوجيه
/W يطابق شخصية يمكن أن تشكل كلمة (أبجدية رقمية ، وهي ترجمتي ، بما في ذلك الأرقام) ، بما في ذلك السطح السفلي ، مثل [/W] تطابق 5 في "5.98 دولار" ، يساوي [A-ZA-Z0-9]
/W مطابقة شخصية لا يمكن أن تشكل كلمة ، مثل [/w] تتطابق $ في "5.98 دولار" ، والتي تساوي [^a-za-z0-9].