为了账号安全,请及时绑定邮箱和手机立即绑定

JS Split正则表达式无法整体输出

JS Split正则表达式无法整体输出

PHP
九州编程 2019-03-02 08:11:29
问题描述字符串内容:test<br />&gt;&gt;No.17132905<br />bbb<br />&gt;&gt;No.17132905<br />test想通过split分割为:['test<br />', '&gt;&gt;No.17132905', '<br />bbb<br />', '&gt;&gt;No.17132905', '<br />test']现在我使用下面的匹配方法:text.split(/(((&gt;){2}|>{2})(No\.){0,1}\d{1,11})/g);实际输出的是:['test<br />',  '&gt;&gt;No.17132905',  '&gt;&gt',  '&gt;',  'No.',  '<br />bbb<br />',  '&gt;&gt;No.17132905',  '&gt;&gt;','&gt;','No.','<br />test']问题出现的环境背景及自己尝试过哪些方法React-Native 0.58
查看完整描述

1 回答

?
繁星coding

TA贡献1797条经验 获得超4个赞

https://img1.sycdn.imooc.com//5c8bd3f60001f52608470381.jpg

所以这里你的原因是子表达式过剩导致的,除了最外层的括号里面的括号都要不得,那么这个正则可以这么写:

'test<br />&gt;>No.17132905<br />bbb<br />&gt;&gt;No.17132905<br />test'.split(/((?:&gt;|\>){2}No\.\d{1,11})/)

使用(?:pattern)的格式匹配 pattern 但不获取匹配结果。


查看完整回答
反对 回复 2019-03-16
  • 1 回答
  • 0 关注
  • 426 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信