4

Swift 2.0 で文字列の最後の句読点を削除しようとしています

var str: String = "This is a string, but i need to remove this comma,      \n"
var trimmedstr: String = str.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet())

まず、最後の空白と改行文字を削除してから、最後の文字がtrimmedstr句読点かどうかを確認する必要があります。ピリオド、カンマ、ダッシュなどを使用できますが、そうである場合は削除する必要があります。

どうすればこれを達成できますか?

4

2 に答える 2

7

それを行うには複数の方法があります。を使用containsして、最後の文字が予想される文字のセットに含まれているかどうかを確認し、の を使用dropLast()してcharactersString最後の文字なしで新しい文字列を作成できます。

let str = "This is a string, but i need to remove this comma, \n"

let trimmedstr = str.stringByTrimmingCharactersInSet(.whitespaceAndNewlineCharacterSet())

if let lastchar = trimmedstr.characters.last {
    if [",", ".", "-", "?"].contains(lastchar) {
        let newstr = String(trimmedstr.characters.dropLast())
        print(newstr)
    }
}
于 2016-01-01T01:57:40.967 に答える