我有一个像这样的字符串:02-09-10, 20:19 (1 dagen geleden)
。我需要括号内的 1。我使用了这个正则表达式:
myStr.replace(/(.+*)\(([0-9]{1,}) dagen geleden\)/i, '$2')
但这不起作用...该怎么办?
问候,渡渡鸟
最佳答案
(.+*)
无效。您需要 (.+?)
来代替。并使用 .match
或 re.exec
来获取子字符串,而不是 .replace
。
如果有多次出现:
var rx = /\((\d+) dagen geleden\)/g;
var res = [];
while((m = rx.exec(myStr))) {
res.push(m[1]);
}
return res;
否则,只需使用:
var m = myStr.match(/\((\d+) dagen geleden\)/);
if (m)
return m[1];
else {
// not found.
}
关于JavaScript 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3642243/