6

Ich habe AttributedString mit Emoji wie dieser "@Mervin Tester"Finden Rang von substring in NSMutableAttributedString

Jetzt muß ich eine Reihe von Mervin in diesem zugeschrieben String finden.

let attributedString = NSMutableAttributedString(string: " @Mervin tester ") 

let range = // range for "Mervin" in above String. 

Vielen Dank.

+2

Kennen Sie 'Mervin'? Oder du suchst nach '@ SomeName'? Else, 'let range = attributedString.string.rangeOfString (" Marvin ")' (im Pseudo-Code bin ich mir der Swift-Methodennamen nicht sicher, aber die Fertigstellung sollte Ihnen helfen). – Larme

+0

@Larme Danke, es funktioniert. Ich habe dasselbe mit utf-8 String versucht, so dass es das falsche Ergebnis zeigte. – Ujesh

Antwort

6

Diese Erweiterung sollte Ihnen helfen.

extension NSAttributedString { 
    func rangeOf(string: String) -> Range<String.Index>? { 
     return self.string.range(of: string) 
    } 
} 

Verbrauch:

attributedString.rangeOf(string: "Mervin")