查找
包含<fmt:message,并且key中的词有“-”连接的单词。
如:
<fmt:message key="page-user-name"/><fmt:message key="data-user-sample"/><fmt:message key="a-b-c">
</fmt:message>

解决方案 »

  1.   


    //还是php的
    $str = '<fmt:message key="page-user-name"/><fmt:message key="data-user-sample"/><fmt:message key="a-b-c">
    </fmt:message>';preg_match_all("/key=\"(.*?)\"/is",$str,$out);
    print_r($out);
    //打印出Array ( [0] => Array ( [0] => key="page-user-name" [1] => key="data-user-sample" [2] => key="a-b-c" ) [1] => Array ( [0] => page-user-name [1] => data-user-sample [2] => a-b-c ) ) 
    //能符合么
      

  2.   

    <script>
    var str = '<fmt:message key="page-user-name"/>'
    +'<fmt:message key="data-user-sample"/>'
    +'<fmt:message key="a-b-c">'
    +'</fmt:message>';
    var re = /<fmt:message key="([^"]*-[^"]*)"(\/)?>/g;
    var arr = str.match(re).join().replace(re,"$1");
    alert(arr)
    </script>
      

  3.   

    http://hi.csdn.net/invite.php?u=3370434&c=9cb528505d2f42a0 加好友谢谢!
      

  4.   

    [code=HTML]<div id=div1>
    <fmt:message key="page-user-name"/><fmt:message key="data-user-sample"/><fmt:message key="a-b-c">
    </fmt:message>
    </div>
    <script>
    var str = div1.innerHTML;
    str = str.match(/(?:\<fmt\:message key=\")[a-z]+(-[a-z]+)+/gi).join(",").replace(/\<fmt\:message key=\"/gi,"");;
    alert(str);
    </script>[/code]
      

  5.   

    var re = /<fmt:message key="([\w-]+)"/g
    alert(txt.match(re).join().replace(re, $1));
      

  6.   

    <fmt:message(?![^->]*>)[^>]+>
      

  7.   

    <script type="text/javascript"> 
    var test = "<fmt:message key=\"page-user-name\"/>";
    var reg = /<fmt:message key=\"(?![^-\"]*\")[^"]+"/ig;
    document.write(test.match(reg));
    </script>
      

  8.   

    接分。
    var setting = '<fmt:message key="page-user-name"/>' //匹配
     +'<fmt:message key="-datause-rsample"/>' //不匹配
     +'<fmt:message key="a-b-c"></fmt:message>'//匹配
     +'<fmt:message key="a-b-"></fmt:message>'//不匹配
     +'<fmt:message key="a---b---c"></fmt:message>'//不匹配
     +'<fmt:message key=\'a-b-c\'/>';//匹配var pat = new RegExp("<fmt\\s*:\\s*message\\s+key\\s*=\\s*([\'\"])[a-z]+(-[a-z]+)+\\1[^>]*(?:(?:\/>)|(?:>[^<>]*</fmt\\s*:\\s*message>))",'ig');
      

  9.   

    贴漏了,
    alert(setting.match(pat));
      

  10.   

    try...<textarea id="source" rows="10" cols="100"></textarea><br />
    <textarea id="result" rows="10" cols="100"></textarea><br /> 
    <script type="text/javascript"> 
    var str = '查找\n'
                +'包含<fmt:message,并且key中的词有“-”连接的单词。\n'
                +'如:\n'
                +'<fmt:message key="page-user-name"/>\n\n'
                +'<fmt:message key="data-user-sample"/>\n\n'
                +'<fmt:message key="a-b-c">\n'
                +'</fmt:message>';
    document.getElementById("source").value += str;
    var reg = /<fmt:message key="(?![^-]*")[^"]*"(\s*\/>|>[\s\S]*?<\/fmt:message>)/ig;
    var arr = str.match(reg);
    for(var i=0;i<arr.length;i++)
    {
        document.getElementById("result").value += arr[i] + "\n-----------\n";
    }
    </script>