RegExp.prototype.source
< JavaScript | RegExp
اذهب إلى التنقل
اذهب إلى البحث
الخاصية RegExp.prototype.source
تُعيد سلسلةً نصيةً String
تحتوي على النص المصدري للتعبير النمطي، لكن دون الخطين المائلين اللذين يحيطان به، ودون أيّة رايات.
سمات الخاصية RegExp.prototype.source | |
---|---|
قابلة للكتابة | لا |
قابلة للإحصاء | لا |
قابلة للضبط | نعم |
أمثلة
استخدام الخاصية source
مثال عن استخدام الخاصية source
للحصول على التعبير النمطي المستخدم. لاحظ أنَّ الناتج لا يحتوي على الخطين المائلين ولا على الرايتين "ig
":
var regex = /fooBar/ig;
console.log(regex.source); // "fooBar"
التعابير النمطية الفارغة وتهريب المحارف
بدءًا من ECMAScript 5، لم تعد الخاصية source
تُعيد سلسلةً نصيةً فارغةً للتعابير النمطية الفارغة، وإنما أصبحت تعيد "(?:)
"؛ إضافةً إلى ذلك، أصبحت محارف الانتقال إلى سطرٍ جديد (مثل "\n
") مهربةً الآن:
new RegExp().source; // "(?:)"
new RegExp('\n').source === '\n'; // true. قبل الإصدار الخامس
new RegExp('\n').source === '\\n'; // true. بدءًا من الإصدار الخامس
دعم المتصفحات
الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
الدعم الأساسي | نعم | نعم | نعم | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft.
- معيار ECMAScript 2015 (6th Edition).
- معيار ECMAScript 5.1. الخاصية source عند استخدامها مع التعابير النمطية الفارغة أصبحت تعيد "
(?:)
"؛ وتغيّرت طريقة تهريب بعض المحارف. - معيار ECMAScript 3rd Edition.