الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/Regex/findAll»
ط استبدال النص - '==القيمة المُعادة==' ب'==القيمة المعادة==' |
جميل-بيلوني (نقاش | مساهمات) مراجعة وتدقيق. |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code>Regex.findAll()</code> في | <noinclude>{{DISPLAYTITLE: الدالة <code>Regex.findAll()</code> في Kotlin}}</noinclude> | ||
تبحث الدالة <code>findAll()</code> عن جميع المحارف المتطابقة مع [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استُدعي معها في [[Kotlin/CharSequence|سلسلة المحارف]] الممرَّرة إليها. يمكن البحث في [[Kotlin/CharSequence|سلسلة المحارف]] المعطاة بأكملها، أو يمكن بدء عملية البحث عند محرف معين. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
سطر 7: | سطر 8: | ||
startIndex: Int = 0 | startIndex: Int = 0 | ||
): Sequence<MatchResult> | ): Sequence<MatchResult> | ||
</syntaxhighlight> | </syntaxhighlight>تبحث الدالة <code>findAll()</code> عن جميع المحارف المتطابقة مع [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استُدعي معها في [[Kotlin/CharSequence|سلسلة المحارف]] <code>input</code> الممررة إليها. يمكن البحث في [[Kotlin/CharSequence|سلسلة المحارف]] المعطاة بأكملها، أو يمكن بدء عملية البحث عند المحرف ذي الفهرس <code>startIndex</code>. يجب ألا تقل قيمة المعامل <code>startIndex</code> عن القيمة 0، القيمة الافتراضية له، وألا تزيد عن القيمة [[Kotlin/CharSequence/length|<code>input.length()</code>]]. | ||
==القيمة المعادة== | ==القيمة المعادة== | ||
تعاد سلسلة تحوي جميع المحارف المتطابقة مع [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] المعطى في [[Kotlin/CharSequence|سلسلة المحارف]] <code>input</code>. يجدر بالذكر أن عملية البحث عن المحارف المتطابقة تبدأ من المحرف ذي الفهرس <code>startIndex</code>. | |||
==أمثلة== | ==أمثلة== | ||
ينشِئ التابع <code>[[Kotlin/kotlin.text/Regex/Init|Regex()]]</code> في الشيفرة الآتية تعبيرًا نمطيًا باسم <code>reg</code> لمطابقة التعابير العددية، ثم يستدعي عبره الدالة <code>findAll()</code> ويحيل القيمة المعادة إلى المتغير <code>matchResults</code>، ثم ينشئ كائن من النوع <code>[[Kotlin/kotlin.text/Appendable/index|Appendable]]</code> عبر الدالة <code>[[Kotlin/kotlin.text/StringBuilder/Init|StringBuilder]]()،</code>ثم يطبع الناتج بعد تجميع النتائج في الحلقة التكرارية <code>[[Kotlin/control flow#.D8.AA.D8.B9.D8.A8.D9.8A.D8.B1 for|for]]</code>:<syntaxhighlight lang="kotlin"> | ينشِئ التابع <code>[[Kotlin/kotlin.text/Regex/Init|Regex()]]</code> في الشيفرة الآتية تعبيرًا نمطيًا باسم <code>reg</code> لمطابقة التعابير العددية، ثم يستدعي عبره الدالة <code>findAll()</code> ويحيل القيمة المعادة إلى المتغير <code>matchResults</code>، ثم ينشئ كائن من النوع <code>[[Kotlin/kotlin.text/Appendable/index|Appendable]]</code> عبر الدالة <code>[[Kotlin/kotlin.text/StringBuilder/Init|StringBuilder]]()،</code>ثم يطبع الناتج بعد تجميع النتائج في الحلقة التكرارية <code>[[Kotlin/control flow#.D8.AA.D8.B9.D8.A8.D9.8A.D8.B1 for|for]]</code>:<syntaxhighlight lang="kotlin"> | ||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
سطر 35: | سطر 36: | ||
==مصادر== | ==مصادر== | ||
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-regex/match-entire.html الدالة | * [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-regex/match-entire.html صفحة الدالة Regex.findAll() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Methods]] | [[تصنيف:Kotlin Methods]] | ||
[[تصنيف:Kotlin Text]] | |||
[[تصنيف:Kotlin Regex]] |
مراجعة 09:02، 30 أغسطس 2018
تبحث الدالة findAll()
عن جميع المحارف المتطابقة مع التعبير النمطي الذي استُدعي معها في سلسلة المحارف الممرَّرة إليها. يمكن البحث في سلسلة المحارف المعطاة بأكملها، أو يمكن بدء عملية البحث عند محرف معين.
البنية العامة
actual fun findAll(
input: CharSequence,
startIndex: Int = 0
): Sequence<MatchResult>
تبحث الدالة findAll()
عن جميع المحارف المتطابقة مع التعبير النمطي الذي استُدعي معها في سلسلة المحارف input
الممررة إليها. يمكن البحث في سلسلة المحارف المعطاة بأكملها، أو يمكن بدء عملية البحث عند المحرف ذي الفهرس startIndex
. يجب ألا تقل قيمة المعامل startIndex
عن القيمة 0، القيمة الافتراضية له، وألا تزيد عن القيمة input.length()
.
القيمة المعادة
تعاد سلسلة تحوي جميع المحارف المتطابقة مع التعبير النمطي المعطى في سلسلة المحارف input
. يجدر بالذكر أن عملية البحث عن المحارف المتطابقة تبدأ من المحرف ذي الفهرس startIndex
.
أمثلة
ينشِئ التابع Regex()
في الشيفرة الآتية تعبيرًا نمطيًا باسم reg
لمطابقة التعابير العددية، ثم يستدعي عبره الدالة findAll()
ويحيل القيمة المعادة إلى المتغير matchResults
، ثم ينشئ كائن من النوع Appendable
عبر الدالة StringBuilder()،
ثم يطبع الناتج بعد تجميع النتائج في الحلقة التكرارية for
:
fun main(args: Array<String>) {
val reg = Regex("""-?\d+(\.\d+)?""") // يطابق هذا التعبير النمطي التعابير العددية، مثل: 45
val matchResults = reg.findAll("ab12cd34ef")
val result = StringBuilder()
for (matchResult in matchResults) {
result.append(matchResult.value + " ")
}
println(result) // => 12 34
}
أنظر أيضًا
matchEntire():
إن كانت جميع حروف الوسيط الممرّرinput
تطابق التعبير النمطي الذي استُدعيت عبره، فإن الدالةmatchEntire()
تعيد نسخة من الصنفMatchResult
تحتوي الكائن المُمرّر نفسه، وإلا فستعيد القيمة المعدومةnull
.
- الخاصية
pattern:
تعيد السلسلة النصية النمطية (pattern string) التي استُخدمت في إنشاء التعبير النمطي الذي استُدعيت عبره.
- الخاصية
options:
تعبر عن مجموعة الخيارات التي استُخدمت في إنشاء التعبير النمطي الذي استُدعيت عبره.