في لغة دارت (Dart)، تساعدك سلسلة النصوص (String) على تخزين البيانات النصية. يمكنك استخدام سلسلة النصوص لتمثيل اسمك، أو عنوانك، أو حتى كتابٍ كامل. تحتوي سلسلة النصوص على سلسلة أو تسلسل من الحروف- والأرقام والأحرف الخاصة. يمكنك استخدام علامات تنصيص مفردة أو مزدوجة أو ثلاثية لتمثيل سلسلة النصوص.
مثال: سلسلة النصوص String في دارت
يمكن كتابة سلسلة النصوص في سطر واحد باستخدام علامات التنصيص المفردة أو المزدوجة، بينما يمكن كتابة سلاسل النصوص المتعددة في علامات تنصيص ثلاثية. فيما يلي مثال على ذلك:
void main() { String text1 = 'هذا مثال لسلسلة نصية في سطر واحد.'; String text2 = "هذا مثال لسلسلة نصية في سطر واحد باستخدام علامات التنصيص المزدوجة."; String text3 = """هذا مثال لسلسلة نصية متعددة تستخدم علامات التنصيص الثلاثية. هذا درس عن سلاسل النصوص في دارت. """; print(text1); print(text2); print(text3); }
الناتج:
هذا مثال لسلسلة نصية في سطر واحد. هذا مثال لسلسلة نصية في سطر واحد باستخدام علامات التنصيص المزدوجة. هذا مثال لسلسلة نصية متعددة تستخدم علامات التنصيص الثلاثية. هذا درس عن سلاسل النصوص في دارت.
دمج السلاسل النصية في دارت:
يمكنك دمج سلسلة نصية مع سلسلة نصية أخرى في دارت. يُطلق على هذه العملية “دمج النصوص” (String Concatenation). في دارت، يمكنك استخدام عامل الجمع (+) أو استخدام تضمين التراكيب (interpolation) لدمج السلاسل. تضمين التراكيب يجعل الكود سهل القراءة والفهم.
void main() { String firstName = "John"; String lastName = "Doe"; print("باستخدام العامل +، الاسم الكامل هو "+firstName + " " + lastName+"."); print("باستخدام تضمين التراكيب، الاسم الكامل هو $firstName $lastName."); }
الناتج:
باستخدام العامل +، الاسم الكامل هو John Doe. باستخدام تضمين التراكيب، الاسم الكامل هو John Doe.
خصائص سلسلة النصوص:
codeUnits
: يعيد قائمة غير قابلة للتعديل من وحدات الترميز UTF-16 لهذه السلسلة النصية.isEmpty
: يُعيد قيمةtrue
إذا كانت هذه السلسلة النصية فارغة.isNotEmpty
: يُعيد قيمةfalse
إذا كانت هذه السلسلة النصية فارغة.length
: يُعيد طول السلسلة النصية بما في ذلك الفراغات وعلامات التبويب والأحرف الجديدة.
void main() { String str = "مرحبا"; print(str.codeUnits); // مثال على وحدات الترميز print(str.isEmpty); // مثال على isEmpty print(str.isNotEmpty); // مثال على isNotEmpty print("طول السلسلة النصية هو: ${str.length}"); // مثال على الطول }
الناتج:
[1605, 1585, 1581, 1576] false true طول السلسلة النصية هو: 4
أساليب سلسلة النصوص:
toLowerCase()
: يحول جميع الأحرف في هذه السلسلة النصية إلى أحرف صغيرة.toUpperCase()
: يحول جميع الأحرف في هذه السلسلة النصية إلى أحرف كبيرة.trim()
: يعيد السلسلة النصية بدون أي فراغات بادئة أو خاتمة.compareTo()
: يقارن هذا الكائن بكائن آخر.replaceAll()
: يستبدل جميع السلاسل الفرعية التي تطابق النمط المحدد بقيمة معينة.split()
: يقسم السلسلة النصية في المواضع المحددة ويعيد قائمة السلاسل الفرعية.toString()
: يعيد تمثيل سلسلة النصية لهذا الكائن.substring()
: يعيد النص من أي موضع ترغب فيه.codeUnitAt()
: يعيد وحدة الترميز UTF-16 بـ 16 بت في المؤشر المحدد.
void main() { String address1 = "Florida"; String address2 = "Texas"; print("العنوان 1 بالأحرف الكبيرة: ${address1.toUpperCase()}"); print("العنوان 2 بالأحرف الصغيرة: ${address2.toLowerCase()}"); String text = " مرحبًا بكم في دارت "; print("النص بعد إزالة الفراغات البادئة والخاتمة: ${text.trim()}"); String str1 = "abc"; String str2 = "def"; print("نتيجة مقارنة السلاسل: ${str1.compareTo(str2)}"); String sentence = "أهلا بك في دارت، دارت هي لغة برمجة رائعة."; String newSentence = sentence.replaceAll("دارت", "Dart"); print("الجملة بعد استبدال السلاسل الفرعية: $newSentence"); String words = "مرحبا بكم في دارت"; List<String> wordList = words.split(" "); print("الكلمات المقسمة: $wordList"); int number = 42; String numberString = number.toString(); print("العدد كسلسلة نصية: $numberString"); String message = "مرحبًا بكم في دارت"; String subMessage = message.substring(6, 13); print("الجزء الفرعي من النص: $subMessage"); String text1 = "Hello"; int charCode = text1.codeUnitAt(0); print("وحدة الترميز للحرف الأول: $charCode"); }
الناتج:
العنوان 1 بالأحرف الكبيرة: FLORIDA العنوان 2 بالأحرف الصغيرة: texas النص بعد إزالة الفراغات البادئة والخاتمة: مرحبًا بكم في دارت نتيجة مقارنة السلاسل: -3 الجملة بعد استبدال السلاسل الفرعية: أهلا بك في Dart، Dart هي لغة برمجة رائعة. الكلمات المقسمة: [مرحبا, بكم, في, دارت] العدد كسلسلة نصية: 42 الجزء الفرعي من النص: بكم في وحدة الترميز للحرف الأول: 72
هذه كانت نظرة عامة على معلومات عن النصوص في لغة دارت. يمكنك استكشاف المزيد من الوظائف والأساليب المتاحة في سلسلة النصوص وتطبيقها في برامجك الخاصة.