>  Q&A  >  본문

javascript - json文本换行 \n符

现象 :

后台json 数组中一个文本字段 带有 \n
“content “:"纤云弄巧,飞星传恨,银汉迢迢暗度。\n金风玉露一相逢,便胜却、人间无数。",

这个字段 现在提供给 两方用, app 抓取后显示, 正常换行;
     前端 提取 这个字段的 时候,
        谷歌 显示为 
        content: "纤云弄巧,飞星传恨,银汉迢迢暗度。 金风玉露一相逢,便胜却、人间无数。",
        火狐  显示为
        content":"\u7ea4\u4e91\u5f04\u5de7\uff0c\u98de\u661f\u4f20\u6068\uff0c\u94f6\u6c49\u8fe2\u8fe2\u6697\u5ea6\u3002\n\u91d1\u98ce\u7389\u9732\u4e00\u76f8\u9022\uff0c\u4fbf\u80dc\u5374\u3001\u4eba\u95f4\u65e0\u6570\u3002"
        
        现前端获取 这个字符串时 做
        var reg = /\\+n/g;
        data["content"].replace(reg,'<br/>')  处理,
   

结果:

被显示为 空格符 了

检测出 以下现象:
把 “<br/>” 替换成 “2222” , 同样未被替换成功;

因 这个 \n 字段app 那边也需抓取显示,无法更改为其他的 特殊字符。

需求:一脸懵逼的 lz 跪求解决方案

黄舟黄舟2771일 전452

모든 응답(1)나는 대답할 것이다

  • 巴扎黑

    巴扎黑2017-04-11 12:56:09

    你的这个正则是匹配失败的

    要分清字符串“\n”和换行符\n,在原始的字符串中,\n表示一个字符,一个换行符,而你在用正则匹配的是一个字符串“\n”,自然匹配失败

    var content="纤云弄巧,飞星传恨,银汉迢迢暗度。\n金风玉露一相逢,便胜却、人间无数。";
    console.log(content.replace(/\n/g,'<br />'));
    //纤云弄巧,飞星传恨,银汉迢迢暗度。<br />金风玉露一相逢,便胜却、人间无数。
    //不过得到的是普通字符串哦

    회신하다
    0
  • 취소회신하다