String.prototype.search()‎

من موسوعة حسوب
مراجعة 15:38، 28 يناير 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

الدالة String.prototype.search()‎ تبحث عن تعبيرٍ نمطيٍ (regular expression) في سلسلةٍ نصية.

البنية العامة

str.search(regexp)

regexp

كائن التعابير النمطية، وإذا مُرِّرَ كائن obj ليس من النوع RegExp، فسيحوَّل إليه ضمنيًا باستخدام الدالة البانية new RegExp(obj)‎.

القيمة المعادة

فهرس أوّل مطابقة للتعبير النمطي في السلسلة النصية، أو القيمة -1 إن لم تكن هنالك مطابقة.

الوصف

إذا أردتَ معرفة إن كان النمط موجودًا في السلسلة النصية وما هو فهرسه، فاستخدم الدالة search()‎ (أما إذا أردتَ معرفة إن كان موجودًا فقط فاستخدم الدالة test()‎ التابعة للكائن RegExp)، للحصول على معلومات أكثر (لكن مع زمن تنفيذ أكبر) فاستخدم الدالة match()‎ (الشبيهة بالدالة exec()‎ التابعة للكائن RegExp).

أمثلة

استخدام search()‎

المثال الآتي يبحث عن تعبيرين نمطيين في سلسلة نصية، ويرينا مثالًا عن نجاح عملية البحث، وعن فشلها:

var str = "hey JudE";
var re = /[A-Z]/g;
var re2 = /[.]/g;
console.log(str.search(re)); // القيمة 4، لأنها فهرس أوّل حرف كبير
console.log(str.search(re2)); // القيمة -1 لعدم وجود نقطة في السلسلة النصية

دعم المتصفحات

الميزة Chrome Firefox Internet Explorer Opera Safari
الدعم الأساسي نعم نعم نعم نعم نعم

مصادر ومواصفات