<aml:annotation aml:id="0" w:type="Word.Book.Start" w:name="Re"/><aml:annotation aml:id="0" w:type="Word.Book.End"/>用正则匹配以上内容:注意:
1:可以忽略属性 aml:id="0"
2:两个节点中间可能存在内容,需考虑谢谢!正则

解决方案 »

  1.   

    匹配简单,问题是你要获取什么内容??
    /<aml[^>]+>/gi这样就可以提取<aml这种标签了【属性里面不能有>,如果有>正则不好写。。~】
      

  2.   

    我要替换符合条件的, 这整个字符串以<aml:annotation w:type="Word.Book.Start" w:name="Re" 开始,
    以<aml:annotation w:type="Word.Book.End" 结束,
    两节点中间可能有内容, 同时w:name可能不是Re 
      

  3.   

    大概看明白你的要求了。。重新来var s='外面的内容<aml:annotation aml:id="0" w:type="Word.Book.Start" w:name="Re"/>'
          +'第一组中间内容中间内<a href="http://bbs.csdn.net><b>csdn</b></a>容中间内容<aml:annotation aml:id="0" w:type="Word.Book.End"/>里面的内容'
          +'外面的内容<aml:annotation aml:id="0" w:type="Word.Book.Start" w:name="Re"/>'
          +'第二组中间内容中间内<a href="http://bbs.csdn.net><b>csdn</b></a>容中间内容<aml:annotation aml:id="0" w:type="Word.Book.End"/>里面的内容'var mc=s.match(/<aml:annotation[^>]+?Word.Book.Start[\s\S]+?Word.Book.End[^>]+>/gi)alert(mc.join('\n\n\n\n'))
      

  4.   

    替换将mc=。。那句改成s=s.replace(/<aml:annotation[^>]+?Word.Book.Start[\s\S]+?Word.Book.End[^>]+>/gi,'')alert(s)
      

  5.   

    是不是没有考虑 w:name 啊
    我可能需要以name作为筛选条件
      

  6.   

    s=s.replace(/<aml:annotation[^>]+?Word.Book.Start[^>]+?w:name="Re"[\s\S]+?Word.Book.End[^>]+>/gi,'')