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

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


==القيمة المُعادة==
==القيمة المعادة==
تعاد سلسلة نصية جديدة مهرَّبة، أو يعاد الكائن المعطى نفسه إذا لم يتم تهريب أي محرف. 


==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>quote‎</code>:
مثال على استخدام التابع <code>quote‎</code>:
<syntaxhighlight lang="ruby">Regexp.escape('\*?{}.')  #=> \\\*\?\{\}\.‎</syntaxhighlight>
<syntaxhighlight lang="ruby">Regexp.escape('\*?{}.')  #=> \\\*\?\{\}\.‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضًا==
* التابع <code>[[Ruby/Regexp/new|new]]</code>: ينشئ  تعبيرًا نمطيًا جديدًا من <code>pattern</code>، والذي يمكن أن يكون إما سلسلة نصية (<code>[[Ruby/String|String]]</code>) أو كائنًا من النوع <code>[[Ruby/Regexp|Regexp]]</code> (وفي هذه الحالة يتم نشر خيارات التعبير النمطي)، وقد لا يتم تحديد خيارات جديدة (منذ روبي 1.8).
* التابع <code>[[Ruby/Regexp/new|new]]</code>: ينشئ  تعبيرًا نمطيًّا جديدًا.
* التابع <code>[[Ruby/Regexp/try_convert|try_convert]]</code>: يُحاول  تحويل الوسيط obj  إلى كائن من النوع <code>[[Ruby/Regexp|Regexp]]</code>، باستخدام التابع to_regexp. ثم يعيد التعبير النمطي الناتج، أو nil في حالة تعذر تحويل obj لسبب أو لآخر.
* التابع <code>[[Ruby/Regexp/escape|escape]]</code>: يهرِّب أي محرف يمكن أن يكون له معنى خاص في التعبير النمطي.


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

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

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

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

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

quote(str)  string

المعاملات

str‎

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

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

تعاد سلسلة نصية جديدة مهرَّبة، أو يعاد الكائن المعطى نفسه إذا لم يتم تهريب أي محرف.

أمثلة

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

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

انظر أيضًا

  • التابع new: ينشئ تعبيرًا نمطيًّا جديدًا.
  • التابع escape: يهرِّب أي محرف يمكن أن يكون له معنى خاص في التعبير النمطي.

مصادر