Avatar ·

Как правильно работать с подстрокой (substring) в Swift?

```html

مرحباً جميعاً! أنا مبتدئ في Swift ولا أستطيع فهم كيفية قص جزء من سلسلة نصية. في لغات أخرى مثل Python أو JavaScript يتم ذلك بسهولة شديدة: `"Hello"[0:4]` أو `"Hello".substring(0, 4)`. لكن في Swift الأمر يبدو معقداً.

هذا ما أحاوله:

let text = "Hello, world!"
let sub = text[0...4] // خطأ: 'subscript' is unavailable

Xcode يشتكي ويقول إنه لا يمكن فعل ذلك. ثم جربت:

let start = text.index(text.startIndex, offsetBy: 0)
let end = text.index(text.startIndex, offsetBy: 4)
let range = start...end
let sub = text[range] // أحصل على Substring وليس String

حصلت على شيء اسمه `Substring` بدلاً من سلسلة نصية عادية. وكيف أتعامل معه؟ لماذا لا يمكنني ببساطة قص جزء من السلسلة كما في اللغات الأخرى؟ لماذا كل هذا التعقيد؟ أرجو التوضيح، كيف يمكنني الحصول على سلسلة فرعية في Swift بطريقة صحيحة وبسيطة؟ أحتاج إلى قص أول 5 أحرف، وآخر 3 أحرف، وكذلك الجزء من الحرف الثالث إلى السابع. وأن تكون النتيجة سلسلة نصية عادية.

```