الفرق بين المراجعتين لصفحة: «Ruby/MatchData/index»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: معامل الفهرسة <code>[]</code> الخاص بالصنف <code>MatchData</code> في روبي}}</noinclude> [[تصنيف: Ruby]...' |
لا ملخص تعديل |
||
سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby MatchData]] | [[تصنيف: Ruby MatchData]] | ||
تتصرف <code>MatchData</code> كمصفوفة، ويمكن الدخول | تتصرف كائنات <code>[[Ruby/MatchData|MatchData]]</code> كمصفوفة، ويمكن الدخول إليها باستخدام تقنيات فهرسة المصفوفات العادية. | ||
التعبير <code>mtch[0]</code> مكافئ للمتغير الخاص <code>$&</code>، لذلك فهو يعيد كامل السلسلة النصية المُطابقة. فيما تعيد التعابير <code>mtch[1]</code> و <code>mtch[2]</code> ...، القيم المؤشرة (backdferences) المُطابقة (أجزاء النمط الموجودة بين قاسين). | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">mtch[i]→ str or nil | <syntaxhighlight lang="ruby">mtch[i]→ str or nil | ||
سطر 10: | سطر 12: | ||
mtch[name]→ str or nil</syntaxhighlight> | mtch[name]→ str or nil</syntaxhighlight> | ||
==القيمة المُعادة== | ==القيمة المُعادة== | ||
التعبير <code>mtch[0]</code> يعيد كامل السلسلة النصية المُطابقة. فيما تعيد التعابير <code>mtch[1]</code> و <code>mtch[2]</code> ...، القيم المؤشرة (backdferences) المُطابقة. | |||
==أمثلة== | ==أمثلة== | ||
مثال على استخدام | مثال على استخدام المعامل<code>[]</code>: | ||
<syntaxhighlight lang="ruby">m = /(.)(.)(\d+)(\d)/.match("THX1138.") | <syntaxhighlight lang="ruby">m = /(.)(.)(\d+)(\d)/.match("THX1138.") | ||
m #=> #<MatchData "HX1138" 1:"H" 2:"X" 3:"113" 4:"8"> | m #=> #<MatchData "HX1138" 1:"H" 2:"X" 3:"113" 4:"8"> | ||
سطر 24: | سطر 27: | ||
m[:foo] #=> "aaa"</syntaxhighlight> | m[:foo] #=> "aaa"</syntaxhighlight> | ||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع <code>[[Ruby/MatchData/begin|begin]]</code>: يعيد موضع (offset) بداية العنصر رقم <code>n</code> من مصفوفة التطابق في السلسلة النصية. | |||
* التابع <code>[[Ruby/MatchData/begin|begin]]</code>: يعيد | |||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/MatchData.html#method-i-5B-5D قسم | *[http://ruby-doc.org/core-2.5.1/MatchData.html#method-i-5B-5D <nowiki>قسم المعامل [] في الصنف MatchData في توثيق روبي الرسمي.</nowiki>] |
مراجعة 22:47، 24 أكتوبر 2018
تتصرف كائنات MatchData
كمصفوفة، ويمكن الدخول إليها باستخدام تقنيات فهرسة المصفوفات العادية.
التعبير mtch[0]
مكافئ للمتغير الخاص $&
، لذلك فهو يعيد كامل السلسلة النصية المُطابقة. فيما تعيد التعابير mtch[1]
و mtch[2]
...، القيم المؤشرة (backdferences) المُطابقة (أجزاء النمط الموجودة بين قاسين).
البنية العامة
mtch[i]→ str or nil
mtch[start, length]→ array
mtch[range] → array
mtch[name]→ str or nil
القيمة المُعادة
التعبير mtch[0]
يعيد كامل السلسلة النصية المُطابقة. فيما تعيد التعابير mtch[1]
و mtch[2]
...، القيم المؤشرة (backdferences) المُطابقة.
أمثلة
مثال على استخدام المعامل[]
:
m = /(.)(.)(\d+)(\d)/.match("THX1138.")
m #=> #<MatchData "HX1138" 1:"H" 2:"X" 3:"113" 4:"8">
m[0] #=> "HX1138"
m[1, 2] #=> ["H", "X"]
m[1..3] #=> ["H", "X", "113"]
m[-3, 2] #=> ["X", "113"]
m = /(?<foo>a+)b/.match("ccaaab")
m #=> #<MatchData "aaab" foo:"aaa">
m["foo"] #=> "aaa"
m[:foo] #=> "aaa"
انظر أيضا
- التابع
begin
: يعيد موضع (offset) بداية العنصر رقمn
من مصفوفة التطابق في السلسلة النصية.