2015-11-06 49 views
0

我試圖創建一個簡單的iOS應用程序,它接受用戶輸入(一個城市)並搜索該城市的網站,然後顯示該城市的預測。如何獲取可能包含空格的用戶輸入並將空格轉換爲Swift中的連字符?

我目前堅持和無法找到太多的文件不是壓倒性的是我如何確保用戶輸入將很好地轉換爲一個URL,如果有更多的一個字的名稱市。

aka如果用戶在我的文本字段中輸入鹽湖城,如何編寫if else語句來確定空格的數量,如果空格的數量大於0,則會將這些空格轉換爲「 - 」 。

到目前爲止,我已經嘗試從字符串中創建一個數組,但仍然無法弄清楚如何將數組追加到數組中的每個元素。我不認爲這是可能的。

有誰知道我該怎麼做我想做的事?或者我以不正確的方式接近它?

這是一個不好的第一次嘗試。我知道這是行不通的,但希望它解釋了我想要完成的東西比我上面的文字更多。

var cityText = "Salt Lake City" let cityArray = cityText.componentsSeparatedByString(" ") let combineDashUrl = cityArray[0] + "-" + cityArray[1] + "-" + cityArray[2]

print(combineDashUrl)

回答

-1

假設有沒有在你應該能夠使用stringByReplacingOccurrencesOfString連續多個空格。

let cityText = "Salt Lake City" 
let newCityText = cityText.stringByReplacingOccurrencesOfString(
    " ", 
    withString: "-") 

用短劃線替換可變數量的空格會更加複雜。我可能會使用正則表達式。

+0

什麼與反對票的?我在遊樂場測試了這段代碼,它可以工作。如果您覺得我的回答有些不足,請解釋一下自己! –

-1

您可以在字符數組上使用地圖將空格轉換爲連字符。

let city = "Salt Lake City" 
let hyphenatedCity = String(city.characters.map{$0 == " " ? "-" : $0}) 

enter image description here

相關問題