2016-12-02 89 views
-2

正如標題所說,我想要計算由用戶填充的字符串中的單詞。爲此,我將簡化它一下,並且我將計算字符串中的空格,將值存儲在另一個變量中,並打印新變量。計算由用戶填充的字符串中的單詞

我使用的代碼如下:

import UIKit 

class TransViewController: UIViewController { 

@IBOutlet var trad_text: UITextView! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    trad_text!.layer.borderWidth = 1 
    trad_text!.layer.cornerRadius = 20 
    trad_text!.layer.borderColor = UIColor(red:0.22, green:0.26, blue:0.39, alpha:1.0).cgColor 
} 



override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    let text = trad_text.text 

    let num_words = text?.characters.split(separator: " ").map(String.init) 
    print(num_words) 
    // Dispose of any resources that can be recreated. 
} 

但它不打印任何數量的單詞。有人可以找到爲什麼這段代碼會給出錯誤嗎?

謝謝您的時間

+2

無關你的錯誤,但爲什麼你'viewDidLoad'這樣做呢?你的視圖控制器甚至不可見,所以你如何處理用戶輸入的文本? – rmaddy

+0

此錯誤與您粘貼的代碼段無關。 – NRitH

+0

是的錯誤是無關的。請爲我們提供實際嘗試獲取資產信息的代碼。 –

回答

0

我終於用下面的代碼做了,也許這將是有用的人:

import UIKit 
import Foundation 

class TransViewController: UIViewController { 

final class Shared { 
    static let shared = Shared() //lazy init, and it only runs once 

    var stringValue : String! 
    var num_words : Int! 
    var boolValue : Bool! 
} 

@IBOutlet var trad_text: UITextView! 
@IBOutlet var buttonTrad: UIButton! 
@IBOutlet var labelsitoh: UILabel! 

@IBAction func butCalc(_ sender: AnyObject) { 

    let text = trad_text.text 

    let num_words = (text?.components(separatedBy: " ").count)!-1 

    Shared.shared.num_words = num_words 
} 

override func viewDidLoad() { 
    super.viewDidLoad() 

    trad_text!.layer.borderWidth = 1 
    trad_text!.layer.cornerRadius = 20 
    trad_text!.layer.borderColor = UIColor(red:0.22, green:0.26, blue:0.39, alpha:1.0).cgColor 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 

    // Dispose of any resources that can be recreated. 
} 
0

您可以使用此代碼:

var string = "first second third" 
let count = string.components(separatedBy: .whitespaces).count 

數等於3這種情況。

+1

這是以什麼方式解決問題中的問題? – rmaddy

+0

此代碼解決了主要目標 - 計算字符串中的單詞 –

+0

此代碼解決了主要目標 - 計算字符串中的單詞 –