Mam ciąg złożony ze słów, z których niektóre zawierają znaki interpunkcyjne, które chciałbym usunąć, ale nie byłem w stanie wymyślić, jak to zrobić.Jak mogę usunąć lub zastąpić wszystkie znaki interpunkcyjne z ciągu?
Na przykład, jeśli mam coś
var words = "Hello, this : is .. a string?"
Chciałabym móc utworzyć tablicę z
"[Hello, this, is, a, string]"
mojego oryginalnego myślenia było użyć czegoś jak words.stringByTrimmingCharactersInSet()
, aby usunąć wszelkie znaki I nie chciałem, ale to zabrałoby postacie tylko z końców.
pomyślałem, że może mógłbym iterację napisu z czymś w stylu
for letter in words {
if NSCharacterSet.punctuationCharacterSet.characterIsMember(letter){
//remove that character from the string
}
}
ale jestem pewien sposób, aby usunąć znak z łańcucha. Jestem pewien, że istnieją pewne problemy ze sposobem, w jaki jest ustawione oświadczenie if, ale pokazuje mój proces myślowy.
Skończyło się na tym, że użyłem mikstury z kilku z tych rozwiązań, aby to zadziałało, ale ten pomógł mi uzyskać ostatni błąd, który naprawiłem. W końcu utworzyłem NSMutableCharacterset, który był alfanumerycznyCharacterSet plus "". Potem skorzystałem z rozwiązania, aby uzyskać to, czego potrzebowałem, bez dodatkowych przestrzeni. – qmlowery