Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: код с 3-мя ссылками обернутыми в параграф

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Надо выбрать только 1
mstdmstd
Отправлено: 16 Октября, 2015 - 10:35:45
Post Id


Частый гость


Покинул форум
Сообщений всего: 170
Дата рег-ции: Авг. 2014  


Помог: 0 раз(а)




Всем привет,
Подскажите, пожалуйста :
есть код с 3-мя ссылками обернутыми в параграф
PHP:
скопировать код в буфер обмена
  1. $orig_str = '
  2. content before
  3. <p class="hide-if-no-js">
  4.  <a href="#" id="remove-post-thumbnail" onclick="javascript:JSMethod(2b37a2b6bd);return false;">
  5.    First link
  6.  </a>
  7. </p>
  8.  
  9. Content inside
  10. <p class="hide-if-no-js">
  11.  <a href="#" id="remove-post-thumbnail" onclick="javascript:JSMethod(2b37a2b6bd);return false;">
  12.    Remove This link
  13.  </a>
  14. </p>
  15.  
  16. Content inside ZZZzzz
  17. <p class="hide-if-no-js">
  18.  <a href="#" id="remove-post-thumbnail" onclick="javascript:JSMethod(2b37a2b6bd);return false;">
  19.    last link
  20.  </a>
  21. </p>
  22.  
  23. content after
  24.         ';
  25.  

1) Хочется выбрать только один(2й) параграф с текстом "Remove This link"
Делаю :


PHP:
скопировать код в буфер обмена
  1. $ImgPattern= '/<p([-:\w\s.a-zA-Z"0-9=?\/;&#\(\)<>]*)[\/>]*Remove This link([-:\w\s.a-zA-Z"0-9=?\/;&#\(\)<>]*)[\/p>]*$/i';
  2.         $A= array();
  3.         $ret= preg_match($ImgPattern, $orig_str, $A);
  4.  

Выбираются все 3 ссылки.
Если убрать "<>" в конце условия - то, ничего не находит. А как правильно ?

2) код с JSMethod(2b37a2b6bd) в оригинале имеет вид
CODE (html):
скопировать код в буфер обмена
  1. onclick="javascript:JSMethod(\'2b37a2b6bd\');retu


Я задал условие с двойным '\\':
PHP:
скопировать код в буфер обмена
  1. $ImgPattern= '/<p([-:\w\s.a-zA-Z"0-9=?\/;&#\(\)<>\\]*)[\/>]*Remove This link([-:\w\s.a-zA-Z"0-9=?\/;&#\(\)<>\\]*)[\/p>]*$/i';
  2.  

и получил ошибку
Цитата:
 Warning: preg_match(): Compilation failed: missing ) at offset 


А как правильно ?

Спасибо!

(Отредактировано автором: 16 Октября, 2015 - 14:19:07)

 
 Top
DeepVarvar Супермодератор
Отправлено: 16 Октября, 2015 - 11:25:23
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB