如题,,, 
<p>p1</p>
<p>p2</p>
<p>p3</p>
<p>p4</p>
JS得到这些内容,用正则表达式来解析前两段, 是普通的字符串,不是DOM。。 document.getElementByTagName不能用

解决方案 »

  1.   


    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'ok.jsp' starting page</title>
        
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">    
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->
    <script type="text/javascript">
    function cc()
    {
    var s="<p>p1</p><p>p2</p><p>p3</p><p>p4</p>";
    var array=s.match(/(?!<p>)(\w*?)(?=<\/p>)/g);
    for(var i=0;i<array.length;i++){
    alert(array[i]);
    }
    }</script>  </head>
      
      <body>
    <div id="todayTime"></div>
    <input type="button" onclick="cc();" value="测试"/>
      </body>
    </html>
      

  2.   


    var str="<p>p1111</p><p>p112111</p><p>p134111</p><p>p111111</p>";
    var reg=/<p>(.*?)<\/p>/g;
    var res=reg.exec(str);
    alert(res[1]);
    res=reg.exec(str);
    alert(res[1]);
      

  3.   

    把*改成+就行了,, 不过这段内容<div>英语中最常见的单词莫过于of the 和on the了</div><p><span style="color: red;">sad</span></p><p>sdfg</p><p>&nbsp;</p>
    只能匹配到一段呢
      

  4.   

    提示下,如果涉及到嵌套。用javascript的正则表达式没有好的解决方案
    我建议还是把这个字符串load 成 xmlDocument 然后再解析吧
      

  5.   

    我想要得到的是
    <p>p1</p>
    <p>p2</p>
    包括p标签, 不会涉及嵌套, 上面试了都多多少少有点问题, 谢谢啦。。
      

  6.   


    var str="<p>p1111</p><p>p112111</p><p>p134111</p><p>p111111</p>";
    var reg=/<p>.*?<\/p>/g;
    var res=str.match(reg);
    alert(res[0]);
    alert(res[1]);
      

  7.   


    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'ok.jsp' starting page</title>
        
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">    
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->
    <script type="text/javascript">
    function cc()
    {
    var s="<p><span style='color: red;'>sad</span></p><p>p2</p><p>p3</p><p>p4</p>";
    var array=s.match(/<p>[\w|\W]+?<\/p>/g);
    for(var i=0;i<array.length;i++){
    alert(array[i]);
    }
    //alert(array.length);
    }
    </script>  </head>
      
      <body>
    <div id="todayTime"></div>
    <input type="button" onclick="cc();" value="测试"/>
      </body>
    </html>