我想制作自己的模式匹配器。
我想只允许这样的字符TN 08 AB 2233
。我怎样才能为此制作模式?
我尝试过如下,但它会删除我在编辑文本中键入的所有字符
^[A-Z]{1,2}[0-9]{4,5}[A-Z]{7,8}[0-9]{10,13}$
感谢。
答案 0 :(得分:0)
试试这个,
^[A-Z]{2}[ -][0-9]{1,2}(?: [A-Z])?(?: [A-Z]*)? [0-9]{4}$
希望这对你有用。
答案 1 :(得分:0)
您正在寻找的是^[A-Z]{2}\\s\\d{2}\\s[A-Z]{2}\\s\\d{4}$
为了解释,大括号中的值不是idices,而是值的数量。
所以,[A-Z]{1,2}
表示A-Z之间的值至少为ond且最多为两次。
[0-9]{4,5}
表示0到9之间至少4和最多5次之间的值。
如果它们是强制性的,你也会错过正则表达式中的空格。
\s
定义任何空格,第二个\
是为了逃避另一个\
。
如果不是强制性的,您可以?
忽略它们^[A-Z]{2}(\\s)?\\d{2}(\\s)?[A-Z]{2}(\\s)?\\d{4}$
。所以他们可以在那里,但不一定是。