2013-01-07 133 views
0

在我的Scala web應用程序中,我正在解析通常包含連字符的URL參數。在某些情況下,該參數來通過與非ASCII連字號,即將非ascii連字符轉換爲Scala中的ascii

11157‑007‑9120‑9 

,而不是

11157-007-9120-9 

這是導致下游系統爆炸......

什麼是最好的轉換這些非ASCII字符的方法?還有其他非ascii字符以及連字符...

+0

是否只有連字符放在字符串中?使用'replaceAll()' – GGrec

+0

如果我沒有弄錯,那些字符在URI中是不合法的(因此在URL中),對吧? – fge

+0

請確保該URL是如何編碼的,據說是不匹配的,因此您會得到奇怪的字符......(例如,URL是UTF,並且您正在以ASCII讀取它) – xhudik

回答

0

如果您只想替換連字符,則可以使用replaceAll。

val strangeHyphen:Char = '\u1234' //replace this with the non-ASCII hyphen character 
val newStr = str.replaceAll(stangeHyphen, '-')