2013-01-07 86 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, '-')