例如,id 是
id='_group[3].id.memberid'
我尝试使用提取“3”
var thisIndex = j(this).attr('id').match('/[\d]+/g')[0];
不工作....
例如,id 是
id='_group[3].id.memberid'
我尝试使用提取“3”
var thisIndex = j(this).attr('id').match('/[\d]+/g')[0];
不工作....
如果id='_group[3].id.memberid'
是标准格式,你可以这样做
id.split(']')[0].split('[')[1]
正则表达式应该略有不同:
.match(/\[(\d+)\]/)[1];
或split
解决方案:
.split(/\]|\[/)[1];
测试:http: //jsfiddle.net/dfsq/Q5bMP/
只是为了提供一种替代方法,它不能准确回答问题,但可能首先解决问题。
如果您可以更改 HTML,我会执行以下操作:
HTML
<div id="_group[3].id.memberid" data-id="3"></div>
JS:
var thisIndex = j(this).attr('data-id');
正则表达式文字不应位于字符串中。.match
删除通话中的撇号。
如果您打算将[]
它们作为字符类,则没有必要;就\d+
足够了。如果您打算让它们成为文字,则需要转义它们:
/\[\d+\]/
我怀疑这g
也是可取的。