javascript - JS中的一个奇异问题
PHPz
PHPz 2017-04-10 16:03:00
[JavaScript讨论组]

各位大大过来看看,这里有干货

//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>'

但是把|分隔符换成, 输出的结果是正确的,而|这个分隔符,在同一个脚本的其他代码段里却又是正常,不知道什么原因,不知道各位大大们是否和我有一样奇遇,求解答。。。。

PHPz
PHPz

学习是最好的投资!

全部回复(1)
PHP中文网

显然 | 是用于正则表达式,因为正则表达式里面 | 又是特殊字符,所以 应该用 "\\|",看清楚是两个。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号