الفرق بين المراجعتين لصفحة: «Ruby/String/scrub»
جميل-بيلوني (نقاش | مساهمات) إنشاء الصفحة. هذه الصفحة من مساهمات "كريم حبال". |
جميل-بيلوني (نقاش | مساهمات) إضافة المحتوى |
||
سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby String]] | [[تصنيف: Ruby String]] | ||
يعيد التابع <code>scrub</code> | يعيد التابع <code>scrub</code> نسخة عن السلسلة النصية التي استدعي معها مع استبدال البايتات غير الصالحة بمحرف محدَّد. إذا لم تحتوي السلسلة على بايتات غير صالحة، فإنَّ التابع يعيد السلسلة النصية نفسها. | ||
فى حال وجود كتلة، فإنَّ التابع يعيد نسخة عن السلسلة النصية مع استبدال كل بايت غير صالح بالقيم التي تعيدها الكتلة. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">scrub → new_str | <syntaxhighlight lang="ruby">scrub → new_str | ||
scrub(repl) → new_str | scrub(repl) → new_str | ||
scrub{|bytes|} → new_str</syntaxhighlight> | scrub{|bytes|} → new_str</syntaxhighlight> | ||
== المعاملات == | |||
=== <code>repl</code> === | |||
المحرف الذي سيحل مكان كل بايت غير صالح في السلسلة النصية المعطاة. | |||
==القيمة المعادة== | ==القيمة المعادة== | ||
تُعاد نسخة عن السلسلة النصية المعطاة مع استبدال كل تسلسل غير صالح بالمحرف <code>repl</code>. إذا لم تحتوي السلسلة على تسلسل غير صالح، فستُعاد السلسلة النصية المعطاة نفسها. إن أعطيت كتلة، فستُعاد نسخة عن السلسلة النصية مع استبدال كل بايت غير صالح بالقيمة التي تعيدها هذه الكتلة. | |||
==أمثلة== | ==أمثلة== | ||
سطر 19: | سطر 27: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر | ==انظر أيضًا== | ||
* التابع <code>[[Ruby/String/partition|partition]]</code>: يبحث عن تطابق نص أو نمط محدد ضمن السلسلة النصية التي استدعي معها. | |||
* التابع <code>[[Ruby/String/replace|replace]]</code>: يستبدل محتوى السلسلة النصية التي استدعي معها بمحتوى السلسلة المُمرَّرة إليه. | |||
* التابع <code>[[Ruby/String/scrub-21|scrub!]]</code>: يستبدل البايتات غير الصالحة في السلسلة النصية التي استدعي معها بمحرف محدَّد أو بالقيمة التي تعيدها الكتلة إن أعطيت. | |||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/String.html#method-i-scrub قسم التابع scrub في الصنف String في توثيق روبي الرسمي.] | *[http://ruby-doc.org/core-2.5.1/String.html#method-i-scrub قسم التابع scrub في الصنف String في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 07:27، 15 ديسمبر 2018
يعيد التابع scrub
نسخة عن السلسلة النصية التي استدعي معها مع استبدال البايتات غير الصالحة بمحرف محدَّد. إذا لم تحتوي السلسلة على بايتات غير صالحة، فإنَّ التابع يعيد السلسلة النصية نفسها.
فى حال وجود كتلة، فإنَّ التابع يعيد نسخة عن السلسلة النصية مع استبدال كل بايت غير صالح بالقيم التي تعيدها الكتلة.
البنية العامة
scrub → new_str
scrub(repl) → new_str
scrub{|bytes|} → new_str
المعاملات
repl
المحرف الذي سيحل مكان كل بايت غير صالح في السلسلة النصية المعطاة.
القيمة المعادة
تُعاد نسخة عن السلسلة النصية المعطاة مع استبدال كل تسلسل غير صالح بالمحرف repl
. إذا لم تحتوي السلسلة على تسلسل غير صالح، فستُعاد السلسلة النصية المعطاة نفسها. إن أعطيت كتلة، فستُعاد نسخة عن السلسلة النصية مع استبدال كل بايت غير صالح بالقيمة التي تعيدها هذه الكتلة.
أمثلة
مثال على استعمال التابع scrub
:
"abc\u3042\x81".scrub #=> "abc\u3042\uFFFD"
"abc\u3042\x81".scrub("*") #=> "abc\u3042*"
"abc\u3042\xE3\x80".scrub{|bytes| '<'+bytes.unpack('H*')[0]+'>' } #=> "abc\u3042<e380>"
انظر أيضًا
- التابع
partition
: يبحث عن تطابق نص أو نمط محدد ضمن السلسلة النصية التي استدعي معها.
- التابع
replace
: يستبدل محتوى السلسلة النصية التي استدعي معها بمحتوى السلسلة المُمرَّرة إليه.
- التابع
scrub!
: يستبدل البايتات غير الصالحة في السلسلة النصية التي استدعي معها بمحرف محدَّد أو بالقيمة التي تعيدها الكتلة إن أعطيت.