2016-02-19 17 views
1

要獲得String的前50個字符,我可以做字符串:substringToIndex對Unicode標量

s.substringToIndex(s.startIndex.advancedBy(50))) 

我怎樣才能得到一個String的前50個標量的Unicode?

我可以用一個s.unicodeScalars對象String.UnicodeScalarView但我不知道如何從那裏。

回答

1

s.unicodeScalars返回String.UnicodeScalarView,其符合 至CollectionType。你可以得到集合的子序列與

u = s.unicodeScalars 
u[u.startIndex ..< u.startIndex.advancedBy(50)] 

,或者在初始序列的情況下,更簡單地用

u.prefix(50) 

有一個小的差異:下標要求指定的 子範圍存在,否則將以運行時異常終止。 prefix()截斷給定索引處,即,它返回一個子序列 用50個或更少的元件。