✏️ تعديل: String Functions
تعديل محتوى الموضوع
→ رجوع للموضوع
عنوان الموضوع
التصنيف
التاقات (مفصولة بفاصلة)
ملاحظة التعديل (اختياري)
المحتوى
**String Functions (Dart)** - `length`: عدد الأحرف `myString.length`. - `isEmpty`/`isNotEmpty`: تحقق إذا السلسلة فاضية. - `toLowerCase()`/`toUpperCase()`: تحويل الأحرف. - `trim()`/`trimLeft()`/`trimRight()`: إزالة الفراغات من الأطراف. - `contains(pattern)`: يشيك إذا النص فيه substring أو RegExp. - `startsWith(prefix)`/`endsWith(suffix)`: للبحث عند البداية أو النهاية. - `substring(start, [end])`: يقتطع جزء من النص. - `split(pattern)`: يحول النص إلى `List<String>` بقطع. - `replaceAll(from, to)`/`replaceFirst(from, to)`: يستبدل أجزاء من النص. - `indexOf(value)`/`lastIndexOf(value)`: يعطي موقع أول/آخر ظهور. - `padLeft(width, [padding])`/`padRight(width, [padding])`: يملّأ بالسلاسل. - `toString()`/`codeUnits`/`runes`: تحويل أو قراءة الـ Unicode. - الكود اللي كتبته بيستخدم `indexOf('i')`, وهي عملية (method) على الـ `String` اللي بتبحث عن الحرف أو ال-substring وترجع أول موقع له (أو `-1` لو مش موجود). - في المثال `name = "Ali"`, الحرف `'i'` موجود في الموضع رقم `2` (بسبب zero-indexing)، فالناتج `2`. **`indexOf` Example** - In Dart `String`, `indexOf` finds the first occurrence index of a substring. - For `"hello"`, calling `indexOf('l')` returns `2` because indexes start at `0` (`h=0`, `e=1`, `l=2`). - If the character isn’t present, it returns `-1`. **String Properties** - كل `String` في Dart عنده خصائص (properties) قبل ما نطقّب عليه وظائف: - `length`: يخبرك عدد الأحرف في النص. - `isEmpty` / `isNotEmpty`: بيقولك إذا النص فاضي أو لا. - `codeUnits` و `runes`: يعطيك قائمة القيم الرقمية للـ Unicode للنص. - الفارق بين property و function: property زي `title.length` ما بياخدش ()، بينما function زي `title.trim()` ممكن تعدّل النص أو يعيد نسخة. لو عايز أشرح الفرق عمليًا ونعمل مثال يطبّق الخصائص دي، قولّي عايز إزاي؟ - صح، كل نوع بيانات في Dart (وكتير من اللغات) عنده خصائص (properties) خصوصًا الأنواع المركبة والنصوص، والخصائص دي بتديك معلومات عن القيمة بدون ما تنفّذ دالة. - مثال: `String` فيه `length`, `isEmpty`, `codeUnits`; `List` فيه `length`, `isEmpty`, `first`, `last`; `Map` فيه `keys`, `values`; حتى `int` له `bitLength`. - في Dart الخصائص تُستخدم بدون `()`, أما الدوال (functions/methods) بتجي بين قوسين. - لو عايز نعدّل أو نستعرض خصائص النوع اللي بتشتغل عليه، قولي النوع ونركّز على اللي محتاجه (مثلاً List أو custom class).
👁️ معاينة فورية
💡 كل بلوك قابل للسحب والترتيب. يدعم
Markdown
:
## عنوان
·
**bold**
·
- قائمة
·
```dart code```
·
[[اسم الموضوع]]
💾 حفظ التعديلات