1

私はSwiftの初心者で、RNDがたくさんありますが、成功することはできません。文字列を範囲で置換していますが、このコードを使用していますが、そのリターンエラーはswift 2.0を使用しています

let aString: String = txt_description.text
        let newString = aString.stringByReplacingOccurrencesOfString(varattherate, withString:"@\(getText) ", options: NSStringCompareOptions.LiteralSearch, range: NSMakeRange(0, 10))

深刻な問題は、文字列からテキストを置換することです。文字列は「私の名前は @test ですが、@te を変更したい」であり、 「@te」を@test」に置き換えますが、最後の「@te」に変更がありますString 、「オートコンプリート テキスト ビュー」を作成しようとしています

しかし、私はこのコードを使用しています

 let aString: String = "my name is @test but i want change @te"
 let newString = aString.stringByReplacingOccurrencesOfString(varattherate, withString:"@\(getText) ", options: NSStringCompareOptions.LiteralSearch, range:nil)

出力は「私の名前は@teststですが、@testを変更したいです」ですが、出力が必要です「私の名前は@testですが、@testを変更したいです」

2番目の問題は 、この関数バックスペースで知る方法です

 func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool 
{


}

私はこのコードを試していますが、テキストが機能していません: String) -> Bool {

    if(text == "\b") {
        println("This is backspace ")
        return false
    }
}
4

1 に答える 1

0

この例をチェックして、2番目の質問を理解してください

// this is ASCII BS (backspace)
let cBS: Int8 = 0x08
let asciitxt: [Int8] = [65,66,67,cBS,68,0]
let asString = String.fromCString(asciitxt)
print(asciitxt)
print(asString)
print(asString!)

/*
[65, 66, 67, 8, 68, 0]
Optional("ABC\u{08}D")
ABCD
*/

最初の質問への答えは、解析コードのロジックに関するものです...非常に迅速に具体的ではありません

于 2015-11-20T15:17:21.430 に答える