jquery RegExp不像我期望的那样工作
jquery RegExp is not working as I expect
这是怎么回事,用一个例子来解释:
form = 'some other [1][2] data ... data[Company][c_list][2][name_2] ... some other data';
form.replace(new RegExp('[c_list][2]', 'g'), '[c_list][1]');
get: data[Company][c_list][2][name[c_list][1]]
需求:data[Company][c_list][1][name_2]
我的代码有什么问题?
谢谢
使用字符[
和]
组成一个集合,因此正则表达式中的[c_list]
不匹配字符序列[c_list]
,而是匹配一个字符,即c
、_
、l
、i
、s
或t
。
转义表达式中的[
和]
字符。当您将模式写为字符串时,您需要使用''
将'
放在模式中:
form.replace(new RegExp('''[c_list'']''[2'']', 'g'), '[c_list][1]');
您也可以将正则表达式写成文字,然后仅使用'
转义字符:
form.replace(/'[c_list']'[2']/g, '[c_list][1]');
在正则表达式中,[...]
具有定义字符类的特殊含义。我想你是在找
form.replace(new RegExp(''[c_list']'[2']', 'g'), '[c_list][1]');
转义正则表达式的括号
相关文章:
- jquery调整大小函数没有按照我期望的方式工作
- 为什么不't使用搜索方法查找.按照我在JavaScript中期望的方式工作
- Lo Dash-帮我理解为什么_.pick没有'I don’我没有按我期望的方式工作
- Javascript:重新启动倒计时计时器并没有像我期望的那样工作
- jQuery的preventDefault()没有像我期望的那样工作——这是jQuery的Bug吗?
- jQuery点击事件选择元素不工作的期望在Chrome 54
- JavaScript setTimeOut似乎不像我期望的那样工作
- For循环没有像我期望的那样工作
- clearInterval也不像我期望的那样工作
- 在Angular 1.5中,track by不能与order by一起工作——期望的数组,但收到了
- Ng-if和ng-class-even/odd不能很好地一起工作,也不能得到期望的结果
- ng-click功能不像我期望的那样工作(或根本不工作)
- jquery RegExp不像我期望的那样工作
- chai期望函数是如何工作的
- 返回setTimeout以稍后停止并不像我期望的那样工作
- 为什么这个Pair类不像我期望的那样工作
- 我'我试图使用onclick事件在循环中定义一个函数,但它不'不像我期望的那样工作.我该怎么做呢?
- moment.js - UTC不像我期望的那样工作
- 为什么是我的简单,纯JavaScript,浅克隆函数不工作,因为我的期望
- JavaScript无法工作:"期望函数"