js中的/[^a-z]/和/([^a-z])/怎么作用不一样的

qq_41300814 2018-04-30 11:36:21
...全文
1336 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_41300814 2018-06-03
  • 打赏
  • 举报
回复
谢谢大佬,明白了!
天际的海浪 2018-04-30
  • 打赏
  • 举报
回复
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/split 中的原话
引用
如果分隔符是包含捕获括号的正则表达式,则每次分隔符匹配时,捕获括号的结果(包括任何未定义的结果)将被拼接到输出数组中。但是,并不是所有浏览器都支持此功能。
天际的海浪 2018-04-30
  • 打赏
  • 举报
回复
这是从IE9开始的,IE8-不会获取子匹配的结果
天际的海浪 2018-04-30
  • 打赏
  • 举报
回复
split方法,如果正则表达式中有子匹配(),则每个子匹配的匹配结果也会添加到返回的数组中。 var str = "aaa1-2bbb"; str.split(/(\d)-(\d)/) 返回 ["aaa","1","2","bbb"] 其中"1","2"是子匹配的结果 不想获取子匹配结果可以用(?:)

87,888

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧