Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 正则表达式查找落后:无效正则表达式:/(?<;=\)\S+;$/:无效组_Javascript_Regex - Fatal编程技术网

Javascript 正则表达式查找落后:无效正则表达式:/(?<;=\)\S+;$/:无效组

Javascript 正则表达式查找落后:无效正则表达式:/(?<;=\)\S+;$/:无效组,javascript,regex,Javascript,Regex,我有下面的regexp (?<=\.)\S+$ (?您不能在JavaScript正则表达式中使用look behinds。虽然有一些,但它们都有自己的缺陷。为了安全起见,请使用捕获组。这里,您需要的内容将在第二组中: (\.)([^.]+)$ 或者,仅使用一个捕获组(以提高性能): 代码: var re=/\([^.]+)$/; var str='test.txt'; var-m; 如果((m=re.exec(str))!==null){ 如果(m.index==re.lastI

我有下面的regexp

(?<=\.)\S+$

(?您不能在JavaScript正则表达式中使用look behinds。虽然有一些,但它们都有自己的缺陷。为了安全起见,请使用捕获组。这里,您需要的内容将在第二组中:

  (\.)([^.]+)$
或者,仅使用一个捕获组(以提高性能):

代码:

var re=/\([^.]+)$/;
var str='test.txt';
var-m;
如果((m=re.exec(str))!==null){
如果(m.index==re.lastIndex){
re.lastIndex++;
}
警报(m[1]);

}
由于babel加载程序错误


替换
var re=/(?不,我没有:)这只是为了举例说明。我不知道,谢谢。有关于这方面的文档吗?它捕获了第一个点之后的所有内容,如果有多个点的话。@Mintsoup:这是一个很好的观点,我们应该限制所有不是句点的内容。答案已更新。@BeNdErR:我想你可以在这里找到很多关于JavaScript的外观,等等所以,或者看看MDN Regex reference()。如果您对解决方法特别感兴趣,这里有一个很好的资源:。只是在regex101的左上角有一个关于未来的注释,上面写着“口味”,您可以选择Javascript而不是PCRE来查看后面的外观是否有效谢谢,我从未注意到这一点
var re = /(?<=\.)\S+$/; 
var str = 'test.txt';
var m;

if ((m = re.exec(str)) !== null) {
    if (m.index === re.lastIndex) {
        re.lastIndex++;
    }
    // View your result using the m-variable.
    // eg m[0] etc.
}
  (\.)([^.]+)$
  \.([^.]+)$