各位大大过来看看,这里有干货
//jquery
String.prototype.repAll = function (s1, s2) {
return this.replace(new RegExp(s1, 'gm'), s2);
};
if ($.type(q) === 'string') {
var tempat = $($this.find('span.at').html().replace('<i class="at fa fa-at"></i>', '').repAll('">', '">|'));
$arr[8] = tempat.text().replace('|', '');
$arr[9] = '<i>' +$arr[8].repAll('|', '</i><i class="cc">')+ '</i>';
}
$this.find('span.at').html()
为'<i class="at fa fa-at"></i><i data-join=",">kam</i><i data-join=",">bbb</i><i data-join=",">老司机</i>'
正确的输出 $arr[8]='kam|bbb|老司机'; $arr[9]='<i>kam</i><i class="cc">bbb</i><i class="cc">老司机</i>'
不过现在的输出却是'<i></i><i class="cc">k</i><i class="cc">a</i><i class="cc">m</i><i class="cc">|</i><i class="cc">b</i><i class="cc">b</i><i class="cc">b</i><i class="cc">|</i><i class="cc">老</i><i class="cc">司</i><i class="cc">机</i><i class="cc"></i>'
但是把|
分隔符换成,
输出的结果是正确的,而|
这个分隔符,在同一个脚本的其他代码段里却又是正常,不知道什么原因,不知道各位大大们是否和我有一样奇遇,求解答。。。。
显然 | 是用于正则表达式,因为正则表达式里面 | 又是特殊字符,所以 应该用 "\\|",看清楚是两个。