请教一个正则表达式的问题

唐诗三百首 2019-10-17 10:44:05
测试网址: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/match

测试1:

var paragraph = 'p1=222&p3=111';
var regex = '(^|&)p3=([^&]*)(&|$)';
var found = paragraph.match(regex);
console.log(found[2]);

返回: 111 -->正确

测试2:

var paragraph = 'p1=222&[p3]=111';
var regex = '(^|&)[p3]=([^&]*)(&|$)';
var found = paragraph.match(regex);
console.log(found[2]);

返回: Error: Cannot read property '2' of null

测试2因参数名带[], 使得match时误判断了, 请教正确写法.希望返回结果111.
...全文
100 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
2019-10-17
  • 打赏
  • 举报
回复

var regex = /(^|&)\[p3\]=([^&]*)(&|$)/;
Logerlink 2019-10-17
  • 打赏
  • 举报
回复
[]属于正则的匹配符号,应转义再使用 var regex = '(^|&)\\[p3\\]=([^&]*)(&|$)'

87,917

社区成员

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

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