الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/Regex/findAll»
لا ملخص تعديل |
لا ملخص تعديل |
||
سطر 12: | سطر 12: | ||
==أمثلة== | ==أمثلة== | ||
===استخدام التابع <code>findAll()</code>=== | ===استخدام التابع <code>findAll()</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/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>) { | ||
val reg = Regex("""-?\d+(\.\d+)?""") // يطابق هذا التعبير النمطي التعابير العددية، مثل: 45 | val reg = Regex("""-?\d+(\.\d+)?""") // يطابق هذا التعبير النمطي التعابير العددية، مثل: 45 | ||
سطر 28: | سطر 28: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==أنظر أيضًا== | ==أنظر أيضًا== | ||
* <code>[[Kotlin/kotlin.text/Regex/matchEntire| matchEntire()]]:</code> إن كانت جميع حروف الوسيط الممرّر <code>input</code> تطابق [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استُدعيت عبره، فإن الدالة<code>matchEntire()</code> تعيد نسخة من الصنف [[Kotlin/kotlin.text/MatchResult/index|<code>MatchResult</code>]] تحتوي الكائن المُمرّر نفسه، وإلا فستعيد القيمة المعدومة <code>null</code>. | |||
* الخاصية <code>[[Kotlin/kotlin.text/Regex/pattern|pattern]]:</code> تعيد السلسلة النصية النمطية (pattern string) التي استُخدمت في إنشاء التعبير النمطي الذي استُدعيت عبره. | * الخاصية <code>[[Kotlin/kotlin.text/Regex/pattern|pattern]]:</code> تعيد السلسلة النصية النمطية (pattern string) التي استُخدمت في إنشاء التعبير النمطي الذي استُدعيت عبره. | ||
سطر 33: | سطر 35: | ||
==مصادر== | ==مصادر== | ||
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-regex/ | * [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-regex/match-entire.html الدالة Regex.findAll() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Methods]] | [[تصنيف:Kotlin Methods]] |
مراجعة 17:47، 5 يوليو 2018
تعيد الدالةfindAll()
كل المطابقات للتعبير النمطي الذي استُدعيت عبره في الوسيط المُمرّر input،
بداية من الفهرس المحدد بالوسيط startIndex.
البنية العامة
actual fun findAll(
input: CharSequence,
startIndex: Int = 0
): Sequence<MatchResult>
القيمة المُعادة
كائن من النوع Sequence<MatchResult>
.
أمثلة
استخدام التابع findAll()
ينشِئ التابع 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:
تعبر عن مجموعة الخيارات التي استُخدمت في إنشاء التعبير النمطي الذي استُدعيت عبره.