Строка поиска в текстовом файле, которая начинается с определенного слова и заканчивается другим конкретным словом

0

У меня есть текстовый файл, содержащий полный абсолютный путь файла вместе с другими данными. Теперь мне нужно написать 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",

Хотя проблема проста, но после поиска и попытки я не могу найти решение прямо сейчас... пожалуйста, помогите!

Теги:

3 ответа

1
Лучший ответ

Вам нужно регулярное выражение, смотря вперед, это работает:

<?php
$s = file_get_contents('input.txt');
if (preg_match_all('/E\:.*(?!\.php)/', $s, $matches)) {
    $paths = current($matches);
}
var_dump($paths);
1

Это может быть работа.

$filename = "Your file name";
$string = file_get_contents($filename);
preg_match_all("/E\:.*(?\.php)/", $string, $data);
  • 0
    Вау ... Я не заметил, что кто-то дал ответ.
1

Вы можете использовать регулярное выражение для этого:

$data = file_get_contents("path_to_your_data");
$pattern = '/E:.+\.php/';
preg_match_all($pattern, $data, $matches);

print_r($matches);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню