Flex正则表达式转换帮助

时间:2010-11-05 23:58:58

标签: python regex flex

我在将正则表达式从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总是以null结尾。我究竟做错了什么?我确信经验丰富的Flex程序员很明显......

1 个答案:

答案 0 :(得分:0)

尝试其中一个Flex正则表达式测试器:

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

首先,你正在使用dotall等,所以你可能想知道Flex使用“s”标志。并且“x”标志忽略空格等。例如,

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

在我的例子中适合我。