例如,id为
id='_group[3].id.memberid'
我尝试使用
提取'3'var thisIndex = j(this).attr('id').match('/[\d]+/g')[0];
不起作用....
答案 0 :(得分:5)
如果id='_group[3].id.memberid'
是标准格式,您可以
id.split(']')[0].split('[')[1]
答案 1 :(得分:2)
Regexp应该略有不同:
.match(/\[(\d+)\]/)[1];
或split
解决方案:
.split(/\]|\[/)[1];
答案 2 :(得分:2)
只是提供一种替代方法,它不能完全回答问题,但可能首先解决问题。
如果您可以更改HTML,我会执行以下操作:
HTML
<div id="_group[3].id.memberid" data-id="3"></div>
JS:
var thisIndex = j(this).attr('data-id');
答案 3 :(得分:1)
正则表达式文字不应该在字符串中。删除.match
调用内的撇号。
如果您打算将它们作为角色类,则不需要[]
;只需\d+
即可。如果你打算让它们成为文字,你需要逃避它们:
/\[\d+\]/
我怀疑g
是否可取。