Помогите мне написать несколько строк в "php синтаксис" - PullRequest
0 голосов
/ 24 марта 2011

У меня возникли проблемы при написании строк, которые я хочу использовать в синтаксисе PHP с preg_match_all.

Все, что мне удалось сделать правильно, это написать <span style=""> в $regex_pattern = "/\<span style=\"color: red;\"\>(.*?)\<\/span\>/i";, но я не могу делать дальше.

Я имею в виду, я не могу написать правильно <h3 class=''> или получите ссылку между <h3 class=""><a href=" и </a>. Пожалуйста, помогите мне с вышеуказанным и приведите несколько примеров, если хотите, или какие-либо онлайн-инструменты для этого.

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 24 марта 2011

Пожалуйста, примите во внимание совет сообщества, когда мы говорим: «Не анализируйте html с регулярным выражением».

Вместо этого вы должны разобрать его с помощью модуля DOMDocument, скомпилированного в большинство сборок PHP.

На phppro.org мне нравится учебник, который сейчас недоступен.

Так вот ссылка на веб-кеш Google для страницы. Также вот документация к DOMDocument.

Существует довольно крутая кривая изучения DOMDocument, но она делает ваш код бесконечно более управляемым, чем регулярные выражения.

0 голосов
/ 24 марта 2011
echo "<span style='color:red;'>Text</span>";

Лучший способ:

if(condition){

?>

<!-- HTML here -->

<?

}

еще

\n  linefeed (LF or 0x0A (10) in ASCII)
\r  carriage return (CR or 0x0D (13) in ASCII)
\t  horizontal tab (HT or 0x09 (9) in ASCII)
\\  backslash
\$  dollar sign
\"  double-quote
\[0-7]{1,3}     the sequence of characters matching the regular expression is a character in octal notation
\x[0-9A-Fa-f]{1,2}  the sequence of characters matching the regular expression is a character in hexadecimal notation
...