Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.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
Regex grep参数在第一次匹配后停止?_Regex_R - Fatal编程技术网

Regex grep参数在第一次匹配后停止?

Regex grep参数在第一次匹配后停止?,regex,r,Regex,R,我正在用R处理一个大文件,我只需要特定正则表达式的第一个匹配项,但是grep正在进一步处理,这当然需要时间 第一场比赛后有没有办法让它停下来 编辑:看起来慢的不是grep而是readLines。读取120MB文件需要20秒。。。fread究竟是如何从数据中读取的。根据最新版本的R,在中读取该表应支持正则表达式子例程,该子例程可以包含量词,因此在您的情况下,您应该能够执行以下操作: (您的正则表达式)(?1){1} (此处为您的正则表达式):捕获正则表达式的组 (?1):对捕获组1的子例程调用

我正在用R处理一个大文件,我只需要特定正则表达式的第一个匹配项,但是
grep
正在进一步处理,这当然需要时间

第一场比赛后有没有办法让它停下来

编辑:看起来慢的不是grep而是readLines。读取120MB文件需要20秒。。。fread究竟是如何从数据中读取的。根据最新版本的R,在中读取该表应支持正则表达式子例程,该子例程可以包含量词,因此在您的情况下,您应该能够执行以下操作:

(您的正则表达式)(?1){1}

  • (此处为您的正则表达式):捕获正则表达式的组
  • (?1):对捕获组1的子例程调用
  • {1} 一次匹配子例程

您可以将
grep
包装到具有显式停止约束的循环中。那会慢一点吗?你能给我们看一个基准测试样本吗?我正在运行长度为1和长度为40000个字符的正则表达式,速度差约为1-2%。此外,您如何处理该文件?可能重复:能否提供使用
grep
的代码示例?