الفرق بين المراجعتين لصفحة: «Ruby/String/tr-21»
جميل-بيلوني (نقاش | مساهمات) إنشاء الصفحة. هذه الصفحة من مساهمات "كريم حبال". |
جميل-بيلوني (نقاش | مساهمات) |
||
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة) | |||
سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby String]] | [[تصنيف: Ruby String]] | ||
يستبدل التابع <code>!tr</code> مجموعة محارف محدَّدة في السلسلة النصية المُعطاة بمحارف مقابلة لها. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">tr!(from_str, to_str) → str or nil</syntaxhighlight> | <syntaxhighlight lang="ruby">tr!(from_str, to_str) → str or nil</syntaxhighlight>يستبدل التابع <code>!tr</code> مجموعة حروف السلسلة <code>from_str</code> في السلسلة النصية المُعطاة بالمحارف المقابلة لها في السلسلة <code>to_str</code>. إذا كانت السلسلة <code>to_str</code> أقصر من السلسلة <code>from_str</code>، فسيكرر الحرف الأخير فيها حتى تصبحان متساويتين من أجل الحفاظ على التنسيق. | ||
يمكن أن تحتوي كلا السلسلتين <code>from_str</code> و <code>to_str</code> على الصيغة <code>c1-c2</code>، والتي تُستعمَل للإشارة إلى مجال محدد من الحروف. | |||
يشير الرمز <code>^</code> فى بداية السلسلة <code>from_str</code> إلى جميع اشتمال جميع المحارف باستثناء تلك المحددة. | |||
يُستعمل الخط المائل العكسي <code>\</code> لتهريب الرمزين <code>^</code> و <code>-</code>، ولا يتم حسابه إلا إذا وقع في نهاية مجال، أو فى نهاية كل من السلسلتين <code>from_str</code> و <code>to_str</code>. | |||
== المعاملات == | |||
=== <code>from_str</code> === | |||
سلسلة نصية تحدد مجموعة المحارف الموجودة في السلسلة النصية المُعطاة والمُراد استبدالها بالمحارف <code>to_str</code> المقابلة. | |||
=== <code>to_str</code> === | |||
سلسلة نصية تحوي المحارف المقابلة التي ستحل مكان المحارف <code>from_str</code> في السلسلة النصية المُعطاة. | |||
==القيمة المعادة== | ==القيمة المعادة== | ||
تُعاد السلسلة النصية المُعطاة بعد استبدال مجموعة محارف السلسلة <code>from_str</code> بالمحارف المقابلة لها في السلسلة <code>to_str</code>، أو تُعاد القيمة <code>nil</code> فى حال عدم إجراء أي تعديل. | |||
== أمثلة == | |||
أمثلة على استعمال التابع <code>!tr</code>:<syntaxhighlight lang="ruby"> | |||
a="hello" | |||
a.tr('el', 'ip') #=> "hippo" | |||
a #=> "hippo" | |||
</syntaxhighlight> | |||
==انظر أيضًا== | |||
* التابع <code>[[Ruby/String/partition|partition]]</code>: يبحث عن تطابق نص أو نمط محدد ضمن السلسلة النصية التي استدعي معها. | |||
* التابع <code>[[Ruby/String/tr|tr]]</code>: يعيد نسخة عن السلسلة النصية المُعطاة مع استبدال مجموعة محارف محدَّدة فيها بالمحارف المقابلة المعطاة. | |||
* التابع <code>[[Ruby/String/tr s-21|tr_s!]]</code>: يشبه التابع <code>tr_s</code> باستثناء أنَّه يجري عملية الاستبدال على السلسلة النصية بدلًا من نسخة عنها. | |||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/String.html#method-i-tr-21 قسم التابع tr! في الصنف String في توثيق روبي الرسمي.] | *[http://ruby-doc.org/core-2.5.1/String.html#method-i-tr-21 قسم التابع tr! في الصنف String في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 19:32، 27 مارس 2019
يستبدل التابع !tr
مجموعة محارف محدَّدة في السلسلة النصية المُعطاة بمحارف مقابلة لها.
البنية العامة
tr!(from_str, to_str) → str or nil
يستبدل التابع !tr
مجموعة حروف السلسلة from_str
في السلسلة النصية المُعطاة بالمحارف المقابلة لها في السلسلة to_str
. إذا كانت السلسلة to_str
أقصر من السلسلة from_str
، فسيكرر الحرف الأخير فيها حتى تصبحان متساويتين من أجل الحفاظ على التنسيق.
يمكن أن تحتوي كلا السلسلتين from_str
و to_str
على الصيغة c1-c2
، والتي تُستعمَل للإشارة إلى مجال محدد من الحروف.
يشير الرمز ^
فى بداية السلسلة from_str
إلى جميع اشتمال جميع المحارف باستثناء تلك المحددة.
يُستعمل الخط المائل العكسي \
لتهريب الرمزين ^
و -
، ولا يتم حسابه إلا إذا وقع في نهاية مجال، أو فى نهاية كل من السلسلتين from_str
و to_str
.
المعاملات
from_str
سلسلة نصية تحدد مجموعة المحارف الموجودة في السلسلة النصية المُعطاة والمُراد استبدالها بالمحارف to_str
المقابلة.
to_str
سلسلة نصية تحوي المحارف المقابلة التي ستحل مكان المحارف from_str
في السلسلة النصية المُعطاة.
القيمة المعادة
تُعاد السلسلة النصية المُعطاة بعد استبدال مجموعة محارف السلسلة from_str
بالمحارف المقابلة لها في السلسلة to_str
، أو تُعاد القيمة nil
فى حال عدم إجراء أي تعديل.
أمثلة
أمثلة على استعمال التابع !tr
:
a="hello"
a.tr('el', 'ip') #=> "hippo"
a #=> "hippo"
انظر أيضًا
- التابع
partition
: يبحث عن تطابق نص أو نمط محدد ضمن السلسلة النصية التي استدعي معها.
- التابع
tr
: يعيد نسخة عن السلسلة النصية المُعطاة مع استبدال مجموعة محارف محدَّدة فيها بالمحارف المقابلة المعطاة. - التابع
tr_s!
: يشبه التابعtr_s
باستثناء أنَّه يجري عملية الاستبدال على السلسلة النصية بدلًا من نسخة عنها.