[英]Flex Regular Expression Conversion Help
我在将正则表达式从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程序员来说这是显而易见的...
尝试使用众多Flex正则表达式测试器之一:
http://www.idsklijnsma.nl/regexps/
一方面,您正在使用dotall等,所以您可能想知道Flex为此使用了“ s”标志。 并且“ x”标志会忽略空格等。例如,
pattern:RegExp = /select.+?from/gis;
在您的榜样上对我有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.