Справка по преобразованию регулярных выражений Flex - PullRequest
0 голосов
/ 06 ноября 2010

У меня проблема с преобразованием регулярного выражения из Python во Flex. Моя строка примерно такая:

SELECT "col", othercol,\n "othercol3" FROM doesn'tmatter...

Python соответствует просто отлично:

>>> re.search('select(.*?)from', 'SELECT "col", othercol,\n "othercol3" FROM doesn\'tmatter...', re.DOTALL|re.IGNORECASE).groups()[0]

' "col", othercol,\n "othercol3" '

Но когда я попробую это во Flex:

var pattern:RegExp = /select(.*?)from/ig;
var match:Array = pattern.exec('SELECT "col", othercol,\n "othercol3" FROM doesn\'tmatter...');
trace(match);

match всегда заканчивается нулем. Что я делаю неправильно? Я уверен, что это очевидно для опытного программиста Flex ...

1 Ответ

0 голосов
/ 06 ноября 2010

Попробуйте один из многочисленных тестеров регулярных выражений Flex:

http://www.idsklijnsma.nl/regexps/

Во-первых, вы используете dotall и т. Д., Поэтому вы можете захотеть узнать, чтоFlex использует для этого флаг "s".А флаг "x" игнорирует пробелы и т. Д. Например,

pattern:RegExp = /select.+?from/gis;

работает для меня на вашем примере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...