37 IBM EBCDIC (US-Canada) aaaaasbgooglesudfhue
437 United States (DOS) United googlecheckout (DOS)
500 IBM EBCDIC (google International) United googlecheckout (DOS)
708 Arabic (ASMO 708) googlesudfhue
中间是tab隔开的,我想取到所有含有google的那一行的那一列的值

解决方案 »

  1.   

    这些行不都有google。
    如果是找括号里的那可以这样:/^.*?\([^\)]*google[^\)]*\).*?$/im处理结果 (1)
    37 IBM EBCDIC (US-Canada) aaaaasbgooglesudfhue
    437 United States (DOS) United googlecheckout (DOS)
    【500 IBM EBCDIC (google International) United googlecheckout (DOS)】
    708 Arabic (ASMO 708) googlesudfhue
      

  2.   

    都有google只是一个例外嘛,那像这样37     IBM EBCDIC(US-Canada)                aaaaasbgooglesudfhue
    437    UnitedStates(DOS) United             googlecheckout(DOS)
    500    IBM EBCDIC (google International)    Unitedbaidu
    708    Arabic (ASMO 708)                    baidu那这样吧,4行3列的数据,列中间用tab隔开
    我想得到 aaaaasbgooglesudfhue 和 googlecheckout(DOS)
      

  3.   

    var str =
    "37\tIBM\tEBCDIC(US-Canada)\taaaaasbgooglesudfhue\r\n\
    437\tUnitedStates(DOS)\tUnited\tgooglecheckout(DOS)\r\n\
    500\tIBM EBCDIC\t(google International)\tUnitedbaidu\r\n\
    708\tArabic\t(ASMO 708)\tbaidu\r\n";
    var result = [];
    str.replace(/^([^\t]*\t){3}(.*?google.*?)$/img, function($0, $1, $2) {
        result.push($2);    
    });
    document.open();
    document.write(result);
    document.close();
    输出:aaaaasbgooglesudfhue,googlecheckout(DOS)
      

  4.   


    <script type="text/javascript"> 
    var test = "37\tIBM\tEBCDIC(US-Canada)\taaaaasbgooglesudfhue\r\n\
    437\tUnitedStates(DOS)\tUnited\tgooglecheckout(DOS)\r\n\
    500\tIBM EBCDIC\t(google International)\tUnitedbaidu\r\n\
    708\tArabic\t(ASMO 708)\tbaidu\r\n";//匹配
    var reg = /(\r?\n|^)(?!(?!.+?google).+(?=\r\n|$)).+/g;
    document.write(test.match(reg));
    </script>