js如何用正则分别匹配dom元素,数字,数字加单个空格,多个空格,以及字符串?

比如:

"<a href='#'>23</a>      650 741 8219     123456789  asdsadasd"

匹配结果为

["<a href='#'>23</a>", "      ", "6507418219", "     ", "123456789", "  ", 'asdsadasd']
阅读 431
评论 2019-05-05 提问
    2 个回答

    你给的例子应该是有问题的,结果的第三个值在文本里面是有空格分开的

    评论 赞赏 2019-05-05
      小明
      • 1.3k

      不说清楚,就一个例子,很难知道你要适配什么情况,你这样提问是有问题。

      我按你例子写了一个,结果不同的地方是数字之间的单个空格没去掉,你使用匹配结果的时候再去一下就好了。

      <script>
      
      "<a href='#'>23</a>      650 741 8219     123456789  asdsadasd".match(/(?:<([a-z]+)[^>]+>[^<]+<\/\1>|[\s]+|[0-9]+(?:\s[0-9]+)+|[0-9a-z]+)/g)
      
      // ["<a href='#'>23</a>", "      ", "650 741 8219", "     ", "123456789", "  ", "asdsadasd"]
      
      </script>
      评论 赞赏 2019-05-05
        撰写回答

        登录后参与交流、获取后续更新提醒