powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Исключение слов целиком в регулярках
18 сообщений из 18, страница 1 из 1
Исключение слов целиком в регулярках
    #37954826
max112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, как исключить целое слово, вот так не работает
[^(?:целое слово)]
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37954835
Anjey aka PM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max112,

Полностью вопрос можно а не его вырожденное представление полученное потем реализации ваших предположений?
Может там вообще не так делать надо
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37954843
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max112,
Код: php
1.
"/(?:целое слово)/"
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37954853
max112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообще задача такого плана: надо выбрать из html файлов участки текста определенной длинны внутри дивов, я пробую искать этот текст исключая при этом тэги, которых не должно быть внутри дивов.

Тут неправильно, но задача понятна:
<div*[^(?:<p>)]{122,1013}.*</div>*
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37954897
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
(?!целое слово)
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37954899
max112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"/(?:целое слово)/" тоже не работает, во всяком случае в regex тестере
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37954900
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max112"/(?:целое слово)/" тоже не работает, во всяком случае в regex тестере
Это не исключение потому что)
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37954923
max112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hett
Код: php
1.
(?!целое слово)



Вот так работает <div*(?=.{22,101332})(?!.*<p>).*</div>* но только одну строку просматривает почему-то.
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37954959
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в группу . не входит символ перевода строки.
Используйте модификатор s
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37954994
max112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо.

А если пробовать внутри "<div>...</div>" исключить вложенный "<div>", то нужен какой-то другой подход? Как я понимаю, он сразу же о первый "<div>" и спотыкается. Пробовал что-то придумывать с рекурсией, но её вообще непонятно как использовать.
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37955009
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
покажите конкретный пример данных и что требуется отматчить
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37955045
max112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Примерно такой код. Верстка часто различается, постоянно только то, что это крайний вложенный div и то, что внутри него длинна колеблется в определенном уникальном диапазоне:

авторpage1:
<div id="head">
<div>
<div class="phone">(347) 100-200<br></div>
</div>
</div>

page2:
<div id="head">
<div>
<div class="second_phone"> 2-300-300</div>
</div>
</div>

page3:
<div id="head">
<div class="my_mob"> 2-300300</div>
</div>
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37955047
max112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В примере только цифры внутри, но это не обязательно так.
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37955072
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
#<div id="head">\s*<div.*class="(?:phone|second_phone|my_mob)".*>(.*)<#


Может как-то так?
Если форматы задаются не человеком, то можно на основе форматов телефона составить регулярку.
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37955109
max112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Человеком, могут быть и буквы. Идеально было бы найти крайний див и посчитать там символы.
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37955113
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max112,

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
	$in = array(
'page1:
<div id="head">
<div>
<div class="phone">(347) 100-200<br></div>
</div>
</div>'
,
'page2:
<div id="head">
<div>
<div class="second_phone"> 2-300-300</div>
</div>
</div>'
,
'page3:
<div id="head">
<div class="my_mob"> 2-300300</div>
</div>'
	);

	foreach ($in as $v) {
		$doc = new DOMDocument();
		$doc->loadHTML($v);
		foreach ($doc->getElementsByTagName('div') as $div) {
			foreach ($div->childNodes as $child) {
				if ($child->hasChildNodes() && $child->hasAttributes())
					echo trim($child->textContent), PHP_EOL;
			}
		}
	}
?>
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37955125
Anjey aka PM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
во-во, DOM парсер тут нужен
...
Рейтинг: 0 / 0
Исключение слов целиком в регулярках
    #37955134
max112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Usman, спасибо.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Исключение слов целиком в регулярках
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]