Javascript 将分组列表元素与正则表达式匹配

Javascript 将分组列表元素与正则表达式匹配,javascript,html,regex,Javascript,Html,Regex,我肯定以前有人问过这个问题,但我找不到 我有一堆列表元素,如下所示: <li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li> <li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li> <li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li> <l

我肯定以前有人问过这个问题,但我找不到

我有一堆列表元素,如下所示:

<li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li>
<li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li>
<li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li>
<li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li>
<br><br>

sample text
<li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li>
<li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li>

more text
<li class="list-item">aewfaffjpiowfj: apeifjeawpfioj</li>
  • aewfaffjpiowfj:apeifjeawpfioj
  • aewfaffjpiowfj:apeifjeawpfioj
  • aewfaffjpiowfj:apeifjeawpfioj
  • aewfaffjpiowfj:apeifjeawpfioj


  • 示例文本
  • aewfaffjpiowfj:apeifjeawpfioj
  • aewfaffjpiowfj:apeifjeawpfioj
  • 更多文本
  • aewfaffjpiowfj:apeifjeawpfioj
  • 我想将每个组包装在一个
      元素中。我该怎么做

      这是我尝试过的,但它只匹配单个元素:
      /]*>.*/g


      如果我做了
      /]*>[\s\s]*/g
      ,它会产生一个巨大的匹配。

      如果您想按新行对它们进行分组,请尝试以下方法:

      ]*>。\n?)+


      它与您的唯一区别在于它尝试捕获多个
    • 对象,并且不介意是否有新行。如果新行后面有不同的内容,则会停止匹配。

      您说过要将每个“组”包装在
      中。如果他们之间只有一个分线,你认为他们是一个团体吗?是什么使它成为一个组?可能是@snollygolly的重复项是的,任何
    • 元素与另一
    • 元素后面的元素都被视为同一组的一部分。如果有换行符、换行符或其他文本,则这将作为组的边界。我不敢相信我忽略了这个简单的答案。非常感谢。对于未来的观众,我必须将解决方案包装在另一层
      /((?:]*>.\n?)/g
      ,然后才能执行
        <1