Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.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
Javascript Angular.js ng模式奇怪的行为_Javascript_Regex_Angularjs - Fatal编程技术网

Javascript Angular.js ng模式奇怪的行为

Javascript Angular.js ng模式奇怪的行为,javascript,regex,angularjs,Javascript,Regex,Angularjs,我一直在开发一个表单,它接受Twitter参数,如#和@,以填充Twitter提要 对于Angular.js,我计划在保存之前使用内置的ng模式指令来验证输入,但是验证的行为非常奇怪。键入时,它会在输入的每2个字符上将“有效”字符串标记为无效 很难解释确切的行为,因此这里有一个例子 为完整起见,我将在此处添加带有奇怪的ng模式的输入字段: 这是由于与g选项的全局匹配,如果您将其取出,它将起作用 多次调用test或exec: 与exec(或与exec组合使用)一样,在同一全局正则表达式实例上多次调

我一直在开发一个表单,它接受Twitter参数,如#和@,以填充Twitter提要

对于Angular.js,我计划在保存之前使用内置的
ng模式
指令来验证输入,但是验证的行为非常奇怪。键入时,它会在输入的每2个字符上将“有效”字符串标记为无效

很难解释确切的行为,因此这里有一个例子

为完整起见,我将在此处添加带有奇怪的
ng模式的输入字段:


这是由于与g选项的全局匹配,如果您将其取出,它将起作用

多次调用
test
exec

与exec(或与exec组合使用)一样,在同一全局正则表达式实例上多次调用的测试将超过上一个匹配

基本上,它试图继续进行另一场比赛,但找不到:

a = /@(\w+)$/g;
> /@(\w+)$/g
a.exec("@test")
> ["@test", "test"]
a.exec("@test")
> null

您是否需要g选项?我不认为你会有多个你想检查的匹配。+1人,我有这个问题,这让我发疯!谢谢你的解释=D