aaa,bbb,"ccc,ddd",eee,"fff,ggg" 
我测试后结果是怎样的?

解决方案 »

  1.   

    如果你的字符串是 \r 的话 用 \r 能够识别 如果 \\r 则 \r 是识别不了的
      

  2.   

    aaa\r\nbbb\r\n"ccc\r\nddd"\r\neee\r\n"fff\r\nggg" 如果有双引号?还是可以的.先取出有双引中间的字符,再用\r\n作split
      

  3.   

    那大家有什么好的方法 最后只要得到aaa,bbb,ccc\r\nddd,eee,fff\r\nggg这几个部分就可以了
      

  4.   

    <script>
    var str='ccc\r\nddd';
    var arr = str.split('\b');
    alert(arr.join('\n'));var arr = str.match(/.+\b/g);
    alert(arr.join('\n'));
    </script>
      

  5.   

    "\w+\\r\\n\w+"|[^\\n]\w+\w楼主试试,我测试了是行的
      

  6.   

    先把ccc\r\nddd替换成一个特殊的字符串,如#######
    然后split \r\n
    然后再把#######替换成ccc\r\nddd
      

  7.   

    LZ的意思是保留双引号中间的\r\n?
    try
    ==========================var str = 'aaa\r\nbbb\r\n"ccc\r\nddd"\r\neee\r\n"fff\r\nggg"';alert(str.replace(/\"([\s\S]*?)\"/ig,function(o){
    return o.replace(/\r\n/,'\\r\\n')
    }).split(/\r\n/));
      

  8.   

    s = s.repace(/"(.*)\\r\\n(.*)"/g, "$1(rn)$2")
      

  9.   

    把\r\n换成|
    var str = 'aaa\r\nbbb\r\n"ccc\r\nddd"\r\neee\r\n"fff\r\nggg"';
    var result = str.replace(/(\"\w*)([\s]*?)(\w*\")/g, "$1|$3").split(/\r\n/);
    alert(result);
      

  10.   

    <script>
    var p1 = /"[^"]*(?:\\.[^"]*)*"|\b[a-zA-Z0-9]+\b/g;
    var p2 = /"[^"]*"|\b[a-zA-Z0-9]+\b/g; //无转义
    var s = 'aaa\r\nbbb\r\n"ccc\r\nddd"\r\neee\r\n"fff\r\nggg"';alert(s.match(p1).join('\n\n\n\n'));
    alert(s.match(p2).join('\n\n\n\n'));
    </script>