Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > PHP: Тексты > Парсинг переменных PHP |
Автор: grytskiv 3.5.2008, 20:37 | ||
Кто нибуть может написать алгоритм+регулярное выражение которое будет находить переменные в коде PHP? Справка: Variable names follow the same rules as other labels in PHP. A valid variable name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thus: '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*' Note: For our purposes here, a letter is a-z, A-Z, and the ASCII characters from 127 through 255 (0x7f-0xff). Note: $this is a special variable that can't be assigned.
Этот код нужен для редактора PHP написанного на PHP (GTK). |
Автор: skyboy 3.5.2008, 21:20 |
Непонятно. ты привел выписку из мана, где указана нужная тебе регулярка. или это как у спамеров - "осмысленная обертка", чтоб антиспам не отсеял? |
Автор: Feldmarschall 3.5.2008, 21:26 | ||
skyboy, для поиска этого недостаточно. Как минимум, есть два случая, когда подходящая под паттерн строка (с долларом вначале, разумеется), не будет переменной с точки зрения скрипта:
grytskiv, РНР ищет переменные не регуляыркой, а посимвольным перебором. А тебе переменная зачем? |
Автор: skyboy 3.5.2008, 23:44 |
Feldmarschall, ну, учитывая , речь, видимо, о подсветке синтаксиса. |
Автор: Feldmarschall 4.5.2008, 07:51 |
Для подсветки я бы не писал свое, а пользовался внешними библиотеками, таким, как colorer. |
Автор: sTa1kEr 15.5.2008, 19:35 |
grytskiv, для парсинга PHP скриптов хорошей идеей будет воспользоватся средствами самого Zend Engine. Почитайте http://php.net/tokenizer |