Forum Webscript.Ru

Программирование => Регулярные выражения => Тема начата: Error202 от 07 Декабря 2006, 11:35:04

Название: Выбрать переменные из текста
Отправлено: Error202 от 07 Декабря 2006, 11:35:04
Здравствуйте!
Есть текст... В нем встречаются переменные (Perl) вида $var $var_var $_ $1 $| и др.
Массивы: $var[xx] $var_var[xx]
Хэши: $var{xx} $var_var[xx]

Мне нужно выцепить  все эти переменные, кроме массивов и хэшей...

Пытался сделать так
(\\$.+?)[ ,;-\\\\r\\\\n]

(\\$.+?)\\b

Но выцепляются все, как правильно сделать исключения массивов и хэшей?
И как отсечь там, например, =, ",\'



P.S. перед $, b, r и n стоит слэш
Название: Выбрать переменные из текста
Отправлено: Error202 от 07 Декабря 2006, 12:25:34
Вопрос открыт... :(
Название: Выбрать переменные из текста
Отправлено: Yukko от 08 Декабря 2006, 14:22:36
Цитировать
Error202:
Вопрос открыт...

надо попробовтаь использовать позиционные проверки ;)
http://phpclub.ru/detail/article/regexp_2 там есть примеры разобранные.
Название: Выбрать переменные из текста
Отправлено: Serg31416 от 25 Декабря 2006, 18:47:52
Привет.

 Оператор выборки переменных в аттаче в текстовом файле, а то здесь текст искажается.
 В первый класс включи все имена специальных переменных. Еще можно предусмотреть спецпеременные типа $^R, но я думаю, и так пойдет.