Документы для веб-разработчиков

<? ///////////////////////////////////////////////////////////////// // Примеры сниппетов для поиска по тексту ///////////////////////////////////////////////////////////////// // -------------------------------------------------------------- // Поиск по тексту (слова в скобках) // -------------------------------------------------------------- $TEXT = 'Мы (нашли, подобрали, подыскали) <b>для вас 47</b> частных и 2 государственные стоматологии (около, рядом с, вблизи) <b>метро Алексеевская</b>, в которых TEST (предоставляется услуга, предоставляют услугу, оказывают услугу), <b>можно получить</b> услугу, вы можете <b>получить услугу</b> «лечение зубов». Цены (начинаются, стартуют) от 230 руб. (Расстояние, Путь) от станции метро до ближайшей клиники – 300 м.'; echo "<pre>"; print_r(getMaskElements($TEXT)); echo "</pre>"; // -------------------------------------------------------------- // Возвращает слова заключенные в скобки "()" // -------------------------------------------------------------- function getMaskElements($text){ $result = array(); $pattern = "/<b>(.*?)</b>/si"; // Поиск внутри по тексту в тэгах тэга (не UTF) $pattern = "/<b>(.*?)</b>/usi"; // Поиск внутри по тексту в тэгах тэга (UTF - кириллица) $pattern = "/\((.*?)\)/si"; // Поиск текста внутри скобок "()" (не UTF) $pattern = "/\((.*?)\)/usi"; // Поиск текста внутри скобок "()" (UTF - кириллица) preg_match($pattern, $text, $matches); // Найдет только первое вхождение preg_match_all($pattern, $text, $matches); // Ищет по всему тексту if(!empty($matches)){ $result = $matches[1]; } return $result; } // -------------------------------------------------------------- // Поиск массива слов в строке // -------------------------------------------------------------- function multineedle_stripos($haystack, $needles, $offset=2) { foreach($needles as $needle) if (stripos(mb_strtolower($haystack, 'windows-1251'), $needle, $offset)) $found[$needle] = $needle; return $found; } // -------------------------------------------------------------- // Поиск текста внутри последних круглых скобок () // -------------------------------------------------------------- $text = "Стол дуб девон 3 (дуб девон xxx 53245) переговорный на дуб девон 2 панельном (Этот текст будет выведен) каркасе В-122 "; echo getColorNameFromText($text); function getColorNameFromText($text){ $res = ""; $pattern = "/\((.*?)\)/usi"; // Поиск текста внутри скобок "()" (UTF - кириллица) preg_match_all($pattern, $text, $matches); // Ищет по всему тексту $res = end($matches); if(is_array($res)){ $res = end($res); } return $res; }