使用Sublime Text在JS中为jQuery插件validation engine编写带有条件的正则表达式。

28 浏览
0 Comments

使用Sublime Text在JS中为jQuery插件validation engine编写带有条件的正则表达式。

我正在尝试在JavaScript中实现一个正则表达式模式,用于以下语句/描述:

一个以一个字母字符开头的字符串,只能是x或y,如果是x,则下一个元素应为数字0,否则如果是y,则下一个元素应为1,然后是一个由4个数字组成的序列。

例如,X01234,Y10000。

我已经构建了类似以下代码的东西

\ˆ(X|Y)(X?0|Y?1)\d{4}\

但是当然,我得到了错误的匹配模式结果。我的正则表达式会忽略并匹配任何字符是X后面跟0或1的情况,对于Y也是一样。

下面描述了它的逻辑结构:

正则表达式可视化

Debuggex演示

有人能帮助我修复它并指出我做错了什么吗?

附注:为了澄清目的,有时Sublime Text的JSLint会显示警告,说这个正则表达式有语法错误,并且JQuery验证插件在使用自定义验证时的工作效果与预期不符。

谢谢

0
0 Comments

问题的原因是:在使用Sublime Text编辑器进行jQuery插件validation engine的正则表达式条件验证时,使用了错误的语法。

解决方法是:更正正则表达式的语法错误,将正则表达式改为以下形式:

/^(?:X0|Y1)[0-9]{4}$/

0