我有一个文本文件,其中包含各种文件绝对路径以及其他数据。现在我需要编写一个php脚本来仅提取排除所有其他文本的绝对文件路径。
我的文件看起来像
文件:
E:\htdocs\DataSet\f1.php
Some text
some more text
* even more text
*
* text again
o E:\xampp\htdocs\DataSet\f2.php
o E:\xampp\htdocs\DataSet\f3.php
I want to extract
E:\htdocs\DataSet\f1.php
E:\xampp\htdocs\DataSet\f2.php
E:\xampp\htdocs\DataSet\f3.php
基本上开始获胜的字符串/句子" E:"并以" .php"
结束虽然问题很简单,但经过搜索和尝试后我现在无法找到解决方案......请帮忙!
答案 0 :(得分:1)
你需要前瞻性的正则表达式,这似乎有效:
<?php
$s = file_get_contents('input.txt');
if (preg_match_all('/E\:.*(?!\.php)/', $s, $matches)) {
$paths = current($matches);
}
var_dump($paths);
答案 1 :(得分:1)
您可以使用正则表达式:
$data = file_get_contents("path_to_your_data");
$pattern = '/E:.+\.php/';
preg_match_all($pattern, $data, $matches);
print_r($matches);
答案 2 :(得分:1)
这可能有用。
$filename = "Your file name";
$string = file_get_contents($filename);
preg_match_all("/E\:.*(?\.php)/", $string, $data);