看板 C_Sharp 關於我們 聯絡資訊
string[] UserInput = {"忠孝東路", "基隆路"}; string String = "忠孝東路5段與基隆路交叉口"; var results = Array.FindAll(UserInput, x => String.Contains(x)); if (results.Count() == 2) { // do something } else if (results.Count() == 1) { // do something } else { // do something } ※ 引述《sqrt1089 (李崩子)》之銘言: : 如題 : 目前小弟字串比對的方式是 : String.IndexOf(UserInput,StringComparison.OrdinalIgnoreCase) >= 0 : 這個語法 : 譬如: : String = 忠孝東路5段與基隆路交叉口 : UserInput = 忠孝東路 or 基隆路。 : 都是 true : 問題如果我想要多重比對要怎做到 (小弟目前是暴力硬幹法) : 以下是小弟的部分語法 : Address.text = "忠孝東路 基隆路" : string[] UserArray = Address.text.split(' ');//空格Split : if (UserArray.lenhth == 1)//假設使用者只輸入一個關鍵字 : { : if(String.IndexOf(UserArray[0],StringComparison.OrdinalIgnoreCase) >= 0) : { : //do something : } : } : else if (UserArray.lenhth == 2)//假設使用者輸入兩個關鍵字 : { : if ( UserArray[0]比對一次 && UserArray[1]比對一次) : { : //do something : } : } : 感謝大家收看 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.228.141.200 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1448040639.A.78B.html
neo5277: 推 11/21 13:25
bantime: 呃...這樣不就會Count很多次..怎麼不用switch? 11/22 02:05