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