不用正则的我已经做了,当然了js版肯定是要用js

解决方案 »

  1.   

    var c= "b";
    var aaa=['北京(bj)','上海(sh)','重庆(cq)','成都(cd)','北海(bh)'];
    var reArr = GetItemFromArr(aaa,c);
    for(var i = 0;i <reArr.length;i++) alert(reArr[i]);function GetItemFromArr(a,word)
    {//从数组a提取包含word的项
    var Str = a.join("");
    var re = new RegExp("([^\)]+)\(" + word + "[^\)]*\)","ig");
    return Str.match(re);
    }
      

  2.   

    var aaa = "['北京(bj)','上海(sh)','重庆(cq)','成都(cd)','北海(bh)']";function getWord(str,key)
    {
    var re = new RegExp("[\"']([^,(]*)\\(" + key + "\\w*\\)[\"']","ig");
    var arr = [];
    while(re.exec(str))
    arr[arr.length] = RegExp.$1;
    return arr;
    }
    alert(getWord(aaa,"b"));
    alert(getWord(aaa,"c"));
    alert(getWord(aaa,"cq"));
    alert(getWord(aaa,"ca"));
      

  3.   

    var aaa = ['北京(bj)','上海(sh)','重庆(cq)','成都(cd)','北海(bh)'];
    var ccc = aaa.toString();
    function getWord(str,key)
    {
    //var re = new RegExp("[\"']([^,(]*)\\(" + key + "\\w*\\)[\"']","ig");
    var re = new RegExp("(?:^|,)([^(]*)\\(" + key + "\\w*\\)","ig");
    var arr = [];
    while(re.exec(str))
    arr[arr.length] = RegExp.$1;
    return arr;
    }alert(getWord(ccc,"b"));
    alert(getWord(ccc,"c"));
    alert(getWord(ccc,"cq"));
    alert(getWord(ccc,"ca"));