String.prototype.search()
< JavaScript | String
الدالة 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 |
---|---|---|---|---|---|
الدعم الأساسي | نعم | نعم | نعم | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft.
- معيار ECMAScript 2015 (6th Edition).
- معيار ECMAScript 5.1.
- معيار ECMAScript 3rd Edition .