输入:
Placed on: Nov 17, 2016 2:27pm
预期结果
Nov 17, 2016 2:27pm
Javascript不支持lookbehind,经过几个小时的寻找解决方案 - 这就是我目前所拥有的:
[^o][^n]+(?=$)
但即使它在http://regexr.com/3et93工作,它也无法在javascript中运行......还有其他想法吗?
PS:前两个单词总是放在:(11个字符)......
答案 0 :(得分:2)
有几种方法可以实现您的需求,其中一些甚至不需要正则表达式。他们在这里:
Placed on:
:
console.log(
"Placed on: Nov 17, 2016 2:27pm".replace("Placed on: ","")
);
substr
:
console.log(
"Placed on: Nov 17, 2016 2:27pm".substr(11)
);
答案 1 :(得分:0)
使用括号捕获Placed on:
后的所有字符。 match
将为您提供包含捕获字符串的数组。
str = "Placed on: Nov 17, 2016 2:27pm";
result = str.match(/^Placed on:(.*)/);
console.log(result[1]);

答案 2 :(得分:0)
str = "Placed on: Nov 17, 2016 2:27pm";
console.log(str.match(/:\s*(.*)/)[1]);
在这里了解正则表达式:https://regex101.com/r/6eLc73/1
或者,如果我们想要使用Placed on text:
试试这个。
str = "Placed on: Nov 17, 2016 2:27pm";
console.log(str.match(/^Placed\s*on:\s*(.*)/)[1]);
最好使用\s
而不是硬编码的单个间距。