delover
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору VadimLou Цитата: думаю \s должно идти после закрывающей скобки ) а не внутри... | Я и добавляю после закрывающей скобки в выражении '<\?(php\w?|)\s' psa1974 Цитата: Дай пример строки, в которой требуется выполнить поиск | Это выражение является свойством коллекции в компоненте использующем RegExpr. Им я анализирую мульти умный текст. В тексте поначалу идут html(+css+javascript) тэги. Но потом в этом тексте могут встречатся тэги <? ...?>, <?php ...?>, <?php3 ...?>, <?php9 ...?> и <?phpJ ...?>. 1. При добавленном \s компонент без труда находит эти теги, но длинну выражения он получает из RegExpr, то есть вместе с пробелом. Так как рисует он это на жолтеньком фоне, то я постоянно вижу что пробел тоже красится жолтеньким, так как длина выражения вместе с пробелом и пробел тоже надо рисовать. 2. Если я убираю пробел, то есть убираю \s, то мне уже можно писать и <?phpwdfgdffgdfg ?> всё равно такая бяка тоже будет вполне корректной. 3. Может у меня это потому, что пользуюсь своей процедурой InputBox, когда хочу запросить у пользователя строку. Могу выложить код. Простое диалоговое окошко и пользую так: if InputBox('New |Group1', s) = '' then s := 'New Group1' В результате выводится строка для ввода, в ней по умолчанию уже есть текст New Group1. А курсор уже стоит там где был символ |. Уже и забыл что в стандарте этого нет. Но вопрос то в том чтобы найти подходящее выражение в тексте и иметь не длинну этого подходящего текста, а длинну текста который я ни под каким предлогом анализировать не должен. Приведу пример procedure [ ] ИнтересноеИмяПроц; Слово процедуре это и есть то что я не анализирую, а уже все то что идёт далее для меня интересно, но оно интереснее начиная с позиции пробела, а не с позиции за точкой с запятой. Я заранее знаю где в выражении RegExpr это можно установить, но каким образом? Мне не очень понятно, коверкать мне компонент, коверкать мне RegExpr или довольствоваться дополнительным собственным обработчиком или может я чего не знаю. заранее извиняюсь за ошибки в тексте. |