Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
RegExpValidator MXML_Regex_Apache Flex_Mxml - Fatal编程技术网

RegExpValidator MXML

RegExpValidator MXML,regex,apache-flex,mxml,Regex,Apache Flex,Mxml,您好我对正则表达式有问题。我在MXML中有一个RegExpValidator,当源包含a或b时,我希望它无效我的RegExpValidator是 <mx:RegExpValidator source="{value}" property="text" expression='.*[^ab].*' valid="isValid(event)"

您好
我对正则表达式有问题。我在MXML中有一个RegExpValidator,当源包含a或b时,我希望它无效
我的RegExpValidator是

<mx:RegExpValidator source="{value}"
                    property="text"
                    expression='.*[^ab].*'
                    valid="isValid(event)"
                    invalid="isInvalid(event)"/>

我的表达式是
expression='.[^ab].'
当只是a、b或a和b(一次或多次)时,表达式无效:OK
当它是其他所有内容时,表达式是有效的:OK

但是当它与其他字符a或/和b一起使用时,它也是有效的。我必须更改什么才能使此文件无效?

有很多在线工具可以帮助您找到正确的RegExp。 其中一些可能需要你一段时间来完善:P

我最常用的是这个:


干杯

想象一下字符串
abc
。如果对其应用正则表达式
*[^ab].
,则第一个
*
将匹配
ab
[^ab]
匹配
c
,最后一个
*
匹配空字符串

此外,如果您没有将正则表达式锚定到字符串的开头和结尾,那么如果只有子字符串匹配,正则表达式可能会声明成功(取决于验证器的实现)

你想要这个:

^[^ab]*$

这将匹配除
a
b
之外的任意数量的字符
^
将正则表达式锚定到开头,
$
锚定到字符串的结尾。

我犯了一个错误,它不是b或c,而是a或b