JS解析字符串异常的处理

我目前在做的webview渲染优化的事情。

目前碰到一个问题,就是说安卓APP请求服务器返回的字符串,然后调用参数传递内容。

但是在执行的时候,总是报错。

有一个不可见的字符,在编辑器中识别不出来,执行之后也看不到,但是查看上一条执行的命令的时候就可以看到一个红点。

然后使用unicode进行解析,发现unicode是\u2028。

经过百度发现了解决办法。

最后解决的办法很简单:

1
2
3
4
5
6
7
8
9
10
11
/**
* 替换字符串 处理Zp(\u2028)段落分隔符,Zl(\u2029)行分隔符
*
* @param $value
*/

function filterWord(&$value) {
if (is_string($value)) {
$value = preg_replace('/[\p{Zp}\p{Zl}]+/u','',$value);
}
}

参考链接: