التابع String.tr في روبي

من موسوعة حسوب
< Ruby‏ | String
اذهب إلى التنقل اذهب إلى البحث
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

يعيد التابع tr نسخة عن السلسلة النصية المُعطاة مع استبدال مجموعة محارف محدَّدة فيها بالمحارف المقابلة المعطاة.

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

tr(from_str, to_str) => new_str

يعيد التابع 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.

أمثلة

أمثلة على استعمال التابع tr:

"hello".tr('el', 'ip')      #=> "hippo"
"hello".tr('aeiou', '*')    #=> "h*ll*"
"hello".tr('aeiou', 'AA*')  #=> "hAll*"

"hello".tr('a-y', 'b-z')    #=> "ifmmp"
"hello".tr('^aeiou', '*')   #=> "*e**o"

"hello^world".tr("\\^aeiou", "*") #=> "h*ll**w*rld"
"hello-world".tr("a\\-eo", "*")   #=> "h*ll**w*rld"

"hello\r\nworld".tr("\r", "")   #=> "hello\nworld"
"hello\r\nworld".tr("\\r", "")  #=> "hello\r\nwold"
"hello\r\nworld".tr("\\\r", "") #=> "hello\nworld"

"X['\\b']".tr("X\\", "")   #=> "['b']"
"X['\\b']".tr("X-\\]", "") #=> "'b'"

انظر أيضًا

  • التابع replace: يستبدل محتوى السلسلة النصية التي استدعي معها بمحتوى السلسلة المُمرَّرة إليه.
  • التابع tr!‎: يستبدل مجموعة محارف محدَّدة في السلسلة النصية المُعطاة بمحارف مقابلة لها.
  • التابع tr_s: يشبه التابع tr باستثناء أنه يحذف المحارف المُكرَّرة الواقعة ضمن المجال المراد استبداله.

مصادر