регулярное выражение получить строку перед сопоставленным шаблоном - PullRequest
0 голосов
/ 22 февраля 2012

Я работаю над проектом, в котором мне нужно отсканировать сайт и получить строку. Это часть текста.

a href = "/ панель инструментов / index / 2971" название = "Project1: Project1"> Project1

Мне нужно получить часть "/ dashboard / index / 2971" всего текста с помощью регулярных выражений. В настоящее время у меня есть это:

 while(true){
                if (buff.readLine()!=null){
                    String wholeText = buff.readLine();
                    System.out.println(wholeText.contains("title=Project1"));
                    htmlCode += buff.readLine() + "\n";
                }else{
                    break;
                }

Это просто определяет строку "title = Project1". Мне нужно получить часть "/ dashboard / index / 2971" и поместить ее в строку.

1 Ответ

0 голосов
/ 22 февраля 2012
<?php
$str = 'a href = "/dashboard/index/2971" title="Project1:Project1">Projeca...';

preg_match_all('#href\s*=\s*"(.*?)"#', $str, $matches, PREG_SET_ORDER);

$foundURLs = array();
foreach ($matches as $match) {
    $foundURLs[] = $match[1]; 
}

var_dump($foundURLs);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...