Başka dillerde bulunan substr() gibi işlevler Phobos'ta bulunmuyor. D'de dilimlemek var ama tabii string'in UTF-8 dizisi olduğunu hatırlarsak işe yaramadığı açık.
Örneğin, şöyle bir kullanım iyi olurdu:
// İkinci indeksten dördüncü indekse kadar (dört hariç)
assert("abcçdef".subString(2, 4).equal("cç"));
İlk parametre başlangıç indeksi olabilir. İkinci indeks ise ya uzunluk olur ya da yukarıda olduğu gibi bitiş indeksi.
Bu soru şu sıralarda İngilizce D.learn haber grubunda da soruldu. (Oradan kopya çekmeyin! :-p) Orada eksi değerli indekslerin de kullanışlı olacağı hatırlatıldı. Başka dillerde öyle: -1 indeksi sonuncu karakter anlamına geliyor; -2 sondan bir önceki karakter, vs.
Siz olsanız nasıl yazardınız?
Ali
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]