Java 如何在android中创建字符串模式

Java 如何在android中创建字符串模式,java,android,regex,Java,Android,Regex,我想做自己的图案匹配器 我想允许像这样的字符只有TN 08 AB 2233。我怎样才能为这个做一个图案 我试着像下面那样,但它会删除我在编辑文本中键入的所有字符 ^[A-Z]{1,2}[0-9]{4,5}[A-Z]{7,8}[0-9]{10,13}$ 谢谢。试试这个 ^[A-Z]{2}[ -][0-9]{1,2}(?: [A-Z])?(?: [A-Z]*)? [0-9]{4}$ 希望这对你有用。你要找的是这样的^[A-Z]{2}\\s\\d{2}\\s[A-Z]{2}\\s\\d{4}$

我想做自己的图案匹配器

我想允许像这样的字符只有TN 08 AB 2233。我怎样才能为这个做一个图案

我试着像下面那样,但它会删除我在编辑文本中键入的所有字符

^[A-Z]{1,2}[0-9]{4,5}[A-Z]{7,8}[0-9]{10,13}$
谢谢。

试试这个

 ^[A-Z]{2}[ -][0-9]{1,2}(?: [A-Z])?(?: [A-Z]*)? [0-9]{4}$

希望这对你有用。

你要找的是这样的^[A-Z]{2}\\s\\d{2}\\s[A-Z]{2}\\s\\d{4}$

为了便于解释,花括号中的值不是ID,而是值的数量

所以,[A-Z]{1,2}意味着A-Z之间的值至少是ond和max的两倍。 [0-9]{4,5}表示0到9之间的值至少4到最多5次。 此外,如果正则表达式中的空格是必需的,那么您将丢失这些空格。 \s定义任何空白,第二个\是转义另一个\。
如果不是强制性的,您可以通过以下方式忽略它们:?像这样^[A-Z]{2}\\s?\\d{2}\\s?[A-Z]{2}\\s?\\d{4}$。因此,他们可以在那里,但不必在那里。

参见[A-Z]{2}\\s[0-9]{2}\\s[A-Z]{2}\\s[0-9]{4}看起来像泰米尔纳德邦的汽车号码。{7,8}重复前面的标记7或8次。它不会表示位置。