2015-04-27 51 views
-2

首先,道歉 - 所有這一切都是新的。在swift中,如何查看UITextField中是否存在特定字符?

我想把用戶輸入到UITextField的任何文本看看它是否包含某個字母,然後計算該字母輸入的次數。例如,如果字符串是「你好」,我希望它會返回,如果是分數,那麼有兩個l。我不希望它是區分大小寫的。

謝謝!

+1

你應該嘗試東西你自己的第一! –

回答

0

您可以使用試試這個擴展名:

extension String 
{ 
    func numberOfChars(char:Character) -> Int 
    { 
     var counter = 0 
     for chr in self 
     { 
      if chr == char 
      { 
       counter++ 
      } 
     } 
     return counter 
    } 
} 

,然後用它喜歡:

println(textField.text.numberOfChars(Character("a"))) 
0

要檢查當用戶輸入您的UITextField文本,你可以使用:addObserver來UITextField並使用observeValueForKeyPath創建方法。在這種方法中,你可以用它來計算字符數:

let someString = "Hello" 
let count = Array(someString).map { $0 == "l" }.filter { $0 == true }.count 

使用像德揚Skledar擴展建議:

extension String { 
    func numberOfChars(char: Character) -> Int { 
     return Array(someString).map { $0 == "l" }.filter { $0 == true }.count 
    } 
} 

,並用它喜歡:

println(textField.text.numberOfChars("l") // prints "3" 
相關問題