【发布时间】:2016-06-04 00:38:21
【问题描述】:
我在数据库中有许多不同的公司(客户)。每个人都需要一个订单号才能传递给他们。但是他们都希望订单号是不同的数字和字母序列。
所以在数据库中我有一列代表这种格式。例如
@@@###@@@ => 3 letters, 3 numbers, 3 letters
AB##@@ => 'AB', 2 numbers, 2 letters
###### => 6 numbers
等等
我需要验证这些订单号的用户输入(文本框),以便它们符合客户对字符串结构的要求。
有什么想法可以用 javascript 实现吗?有没有我可以使用的函数或库,我可以简单地“插入”从数据库中获取的格式,它会根据用户输入的字符返回 true 或 false。
“固定”正则表达式很简单,但它是动态的并且基于客户,并且有数百种不同的格式...
任何帮助表示赞赏。
【问题讨论】:
-
安静松散,
^[a-zA-Z]{2,3}[0-9]{2,3}[a-zA-Z]{2,3}$. -
但是我需要每个客户的订单号结构的精确副本。所以一个可能是@@@##(字母、字母、字母、数字、数字),另一个可能是 AA####(以 AA 开头,后跟 4 个数字)。该数据库中有数百种不同的格式。
-
我需要某种库,它将从数据库中获取格式,将其解释为“常量”、字母、数字,然后返回真或假。或类似的东西......
-
“‘固定’正则表达式很简单,但这是动态的,并且基于客户,并且有数百种不同的格式......”根据用户输入确定?
-
它在页面加载中。我想得越多,我想到的可能实现解决方案的方法就越多,但我认为 phenxd 给了我最简洁的解决方案,即简单地使用字符串替换来构建正则表达式。
标签: javascript jquery regex