Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.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
php正则表达式文件路径|特定字符后的第二次匹配_Php_Regex - Fatal编程技术网

php正则表达式文件路径|特定字符后的第二次匹配

php正则表达式文件路径|特定字符后的第二次匹配,php,regex,Php,Regex,我试图提取文件补丁,没有磁盘字母,这是内部文本。类似于AvastSecureBrowserElevationService;C:\Program Files(x86)\AVAST Software\Browser\Application\elevation\U service.exe[X]摘录:\Program Files(x86)\AVAST Software\Browser\Application\elevation\U service.exe 我的实际正则表达式看起来像这样,但它将在任何可

我试图提取文件补丁,没有磁盘字母,这是内部文本。类似于
AvastSecureBrowserElevationService;C:\Program Files(x86)\AVAST Software\Browser\Application\elevation\U service.exe[X]
摘录
:\Program Files(x86)\AVAST Software\Browser\Application\elevation\U service.exe

我的实际正则表达式看起来像这样,但它将在任何可能包含文件名的空间上停止

(?<=:\\)([^ ]*)

(?在这里,当我们收集希望输出的内容时,我们将使用整个字符串,并且我们将
preg\u replace

.+C(:\\.+\..+?)\s.+
试验
您可以为此目的使用此正则表达式:

(?<=[a-zA-Z]):[^.]+\.\S+

(?您可以使用以下正则表达式:

[A-Z]\K:.+\.\w+
它将匹配任何大写字母,后跟
,然后匹配任何以
结尾的字符串,后跟至少一个单词字符

\K
从匹配中删除前面的内容


anubhava的
73.0.1270.86中有点,但在这些点之后没有任何空格字符和我的书写方式,总是有空间进行快速手动重新检查。为了更好地理解,我将其删除,您可以使用:
(?@anubhava它看起来可以工作,把它写成答案,这样我就可以把它标记为正确答案。文件可以有各种各样的结尾,比如.dll、.php等,也可以有驱动程序字母,比如D、F等。@anubhava解决方案看起来可以工作得很好。
[A-Z]\K:.+\.\w+