الفرق بين المراجعتين لصفحة: «Ruby/Regexp/escape»

من موسوعة حسوب
< Ruby‏ | Regexp
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>escape‎</code> الخاص بالصنف <code>Regexp</code> في روبي}}</noinclude> تصنيف: Ruby تصني...'
 
طلا ملخص تعديل
 
(3 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>escape‎</code> الخاص بالصنف <code>Regexp</code> في روبي}}</noinclude>
<noinclude>{{DISPLAYTITLE: التابع <code>Regexp.escape‎</code> في روبي}}</noinclude>
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Regexp]]
[[تصنيف: Ruby Regexp]]
يُخلّص (Escapes) التابع <code>escape</code> أي حرف يمكن أن يكون له معنى خاص في التعبير النمطي. ثم يعيد سلسلة نصية جديدة مُخلّصة، أو يعيد الكائن الذي استُدعي معه (self) في حال عدم تخليص أي أحرف.  لكل سلسلة نصية str، ستكون قيمة <code>Regexp.new(Regexp.escape( str ))=~ str</code> مساوية للقيمة true.
يهرِّب التابع <code>escape</code> أي محرف يمكن أن يكون له معنى خاص في التعبير النمطي ثم يعيد سلسلة نصية جديدة مهرَّبة، أو يعيد الكائن الذي استُدعي معه (<code>self</code>) في حال عدم تهريب أي محرف.   
 
لكل سلسلة نصية <code>str</code>، ستكون قيمة التعبير <code>Regexp.new(Regexp.escape( str ))=~ str</code> مساوية للقيمة <code>true</code>.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">escape(str)→ string‎</syntaxhighlight>
<syntaxhighlight lang="ruby">escape(str)→ string‎</syntaxhighlight>
==المعاملات==
==المعاملات==
===<code>str‎</code>===
===<code>str‎</code>===
السلسلة النصية المراد تهريبها.


==القيمة المُعادة==
==القيمة المعادة==
تعاد سلسلة نصية جديدة مهرَّبة، أو يعاد الكائن الذي استُدعي معه (<code>self</code>) في حال عدم تهريب أي محارف. 


==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>escape‎</code>:
مثال على استخدام التابع <code>escape‎</code>:
<syntaxhighlight lang="ruby">Regexp.escape('\*?{}.')  #=> \\\*\?\{\}\.‎</syntaxhighlight>
<syntaxhighlight lang="ruby">Regexp.escape('\*?{}.')  #=> \\\*\?\{\}\.‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضًا==
* التابع <code>[[Ruby/Regexp/compile|compile]]</code>: اسم آخر للتابع <code>Regexp.new</code>
* التابع <code>[[Ruby/Regexp/quote|quote]]</code>: يهرِّب التعبير النمطي.
* التابع <code>[[Ruby/Regexp/last_match|last_match]]</code>: يُعيد  في الشكل الأول  كائن <code>[[Ruby/MatchData|MatchData]]</code> الذي تم إنشاؤه من آخر تطابق ناجح للنمط.  وهو مكافئ لقراءة المتغير العام المخصوص <code>$~</code> (راجع المتغيرات العامة المخصوصة في صفحة <code>[[Ruby/Regexp|Regexp]]</code> لمزيد من التفاصيل).


==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Regexp.html#method-c-escape قسم التابع escape‎ في الصنف Regexp‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/Regexp.html#method-c-escape قسم التابع escape‎ في الصنف Regexp‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 05:42، 4 ديسمبر 2018

يهرِّب التابع escape أي محرف يمكن أن يكون له معنى خاص في التعبير النمطي ثم يعيد سلسلة نصية جديدة مهرَّبة، أو يعيد الكائن الذي استُدعي معه (self) في حال عدم تهريب أي محرف.

لكل سلسلة نصية str، ستكون قيمة التعبير Regexp.new(Regexp.escape( str ))=~ str مساوية للقيمة true.

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

escape(str) string

المعاملات

str‎

السلسلة النصية المراد تهريبها.

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

تعاد سلسلة نصية جديدة مهرَّبة، أو يعاد الكائن الذي استُدعي معه (self) في حال عدم تهريب أي محارف.

أمثلة

مثال على استخدام التابع escape‎:

Regexp.escape('\*?{}.')   #=> \\\*\?\{\}\.‎

انظر أيضًا

  • التابع quote: يهرِّب التعبير النمطي.

مصادر