Durante el proceso de programación, a menudo necesita verificar el formato de datos de entrada. Para verificar si los datos de entrada cumplen con un determinado formato, puede usar el método de coincidencia () de la clase de cadena para juzgar.
Partidos booleanos (cadena regex)
Regex: especifique la expresión regular.
Valor de retorno: Back Boolean Type.
Este método se utiliza para informar si la cadena actual coincide con la expresión regular especificada por el parámetro REGEX.
Las expresiones regulares son cadenas compuestas de personajes con significados especiales. Para la traducción.
.: Representa cualquier personaje.
/D: representa cualquier número de 0-9.
/D: representa cualquier carácter no digital.
/S: Representa los caracteres en blanco.
/S: representa caracteres no blank.
/W: Significa un carácter que se puede usar como identificador, pero no incluye "$".
/W: Significa el personaje que no se puede usar como identificador.
/P {inferior}: representa una letra minúscula a ~ z.
/P {superior}: representa letras mayúsculas a ~ a.
/P {ASCII}: carácter ASCII.
/P {alfa}: carácter de letra.
/P {dígito}: número decimal, 0-9.
/P {Alnum}: números o caracteres de letras.
/P {Punch}: símbolo de puntuación.
/P {gráfico}: carácter visible.
/P {imprimir}: puede imprimir caracteres.
/P {en blanco}: en blanco o relojería.
/P {CNTRL}: CARÁCTER DE CONTROL.
Cuando se usa expresiones regulares, si se requiere un cierto tipo de meta carácter varias veces, es bastante problemático ingresar una por uno. su significado se enumeran a continuación.
?: 0 o 1 veces.
*: 0 veces o varias veces.
+: 0 o 1 veces.
{n}: repita n veces.
{n,}: repita al menos n veces.
{n, m}: repita n ~ m veces.
En las expresiones regulares, también puede encerrar múltiples caracteres en los soportes cuadrados.
[ABC]: representa A, B o C.
[^ABC]: indica cualquier caracteres que no sean A, B y C.
[A-Za-Z]: cualquier carácter de a ~ z o a ~ z.
[Ad [mp]]: cualquier carácter de a ~ d o m ~ P.
[AZ && [def]]: D, E o F.
[AZ && [^BC]]]]: A ~ Z no contiene todos los caracteres de B y C entre B y C.
[AZ && [^mp]]]: a ~ z no contiene todos los caracteres de m ~ p entre.
Ejemplo:
1. Número de placa:
/**** @Description: Verifique el número de matrícula* @param carnum* yu a106ek* @return legal: verdadero ilegal: falso*/public static boolean validateCarnum (string carnum) {boole un resultado = falso; nueva cadena [] {"Jing", "Jin", "Ji", "Jin", "liao", "ji", "negro", "shanghai", "su", "anhui", "fujian", ",", ",", "," Fujian "," Fujian "," Fujiano "," Fujiano "," Fujian "," Fujian "," Fujian "" Gan "," Lu "," Yu "," Hubei "," Xiang "," Guangdong ", "Gui", "Qiong", "Chong", "Sichuan" "Tibetano", "Shaanxi", "gan", "Qing", "ning", "nuevo", "Hong Kong", "Australia", "Mongolia "}; Cadena reg ="/u4e00-/u9fa5] {1} [az] {1} [a-z_0-9] {5} "; boolean firstchar = false; if (carnum.length ()> 0) { FirstChar = Arrays.aslist (Provente). {resultado = true;} else {resultado = fals e;}} catch (excepción e) {E.PrintStackTrace Result;}2. Número de teléfono móvil:
/**** @Descripting: Verifique el número de teléfono móvil*@param mobilenum 15516985859*@return legal: verdadero ilegal: falso*/public static boolean ismobilenum (string mobileNum) {b oolean resultado = falso; try {patrón p = patrón p = patrón p = .Compile ("^((13 [0-9]) | (15 [^4, // d]) | (18 [0,5-9])) // D {8} $"); = p.Número de teléfono móvil+Número de teléfono fijo: 010-11111111,15516985859,0377-1111111
// prueba Java si se trata de un número de teléfono (teléfono móvil, verificación de teléfono fijo) String Legalphone = "" "" "; String regexp ="^((13 [0-9]) | (15 [^4, // d]) | (18 [0,5-9])) // D {8} | "; .Compile (regexp); matcher m = p.matcher (importpotentialbfos [i] .getlegalphone ()); if (m.find ()) {// nota: m.find puede usarse una vez, después del segundo Llame, todos se usan.3. Número real:
String [] arrs = new String [] {"A", "1.123", "-1.23", "0", "+111"}; = Pattern.compile (regex); ;}Imprimir:
A: Falso
1.123: verdadero
-1.23: verdadero
0: Verdadero
+111: falso