Red de conocimiento informático - Aprendizaje de programación - Expresiones regulares JAVA

Expresiones regulares JAVA

/iamben250/34352.html Esta es mi introducción detallada en el blog.

Expresión regular para hacer coincidir caracteres chinos: [\u4e00-\u9fa5]

Hacer coincidir caracteres de doble byte (incluidos los caracteres chinos)

Aplicación: Calcula la longitud de la cadena (doble byte caracteres La longitud cuenta como 2, los caracteres ASCII cuentan como 1)

String.prototype.len =function(){return this.replace([^\x00-\xff]/g, "aa"). length ;}

Expresión regular para hacer coincidir líneas vacías: \n[\s| ]*\r

Expresión regular para hacer coincidir etiquetas HTML: /lt;(. * )gt; .*lt;\/\1gt;|lt;(. *) \/gt;/

Expresión regular que coincide con espacios iniciales y finales: (^/\s*)|

Aplicación: javascript no tiene una función de recorte como vbscript, por lo que podemos usar esta expresión de la siguiente manera:

String.prototype = function()

{

devuelve this.replace(/(^\s*)|(\s*$)/g, "");

}

Utilice expresiones regulares para descomponer y convertir direcciones IP:

La siguiente es una expresión Javascript que utiliza expresiones regulares para hacer coincidir direcciones IP y convertir el programa Javascript que convierte direcciones IP en el valor correspondiente:

función IP2V(ip)

{

re=/(\d )\.(\d )\.(\d )\ (\d )/g /. /La expresión regular coincide con la dirección IP

if(re.test(ip))

{

return RegExp.$1* Math.pow(255, 3) ) RegExp.2*Math.pow(255, 2)) RegExp.3*255 RegExp.4*1

}

else

p>

{

Arroja un nuevo error ("¡No es una dirección IP válida!")

}

}

Sin embargo, si no utiliza expresiones regulares, pero solo use la función de división para descomponer, la descomposición del programa anterior puede ser mejor, el programa es el siguiente:

var ip="10.100.20.168"

ip=ip.split(".")

alert("El valor de IP es: " (ip[0]*255*255*255 ip[1]*255*255 ip[2]* 255 ip[3]*1))

Expresión regular que coincide con direcciones de correo electrónico: \w ([- .] \w )*@\w ([-....] \w )* \. \w ([-.] \w )*

URL coincidente con expresión regular:/page1.htm"

s=s.replace(/(. *\/ ){0 ,}([^\.] ).*/ig,"$2")

alerta(s)

Utilice expresiones regulares para restringir cuadros de texto en formularios web Contenido ingresado en:

Utilice expresiones regulares para limitar el contenido ingresado en el formulario web solo a chino: onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g, '')" onbeforepaste= "clipboardData.setData('texto', clipboardData.getData(

'text').replace(/[^\u4E00-\u9FA5]/g,''))""

Utilice una expresión regular para limitar la entrada a caracteres de ancho completo: onkeyup="value= valor reemplazar(/[^\uFF00-\uFFFF]/g, '')" onbeforepaste="clipboardData.setData('texto', clipboardData.getData('texto'). reemplazar(/[^\uFF00-\uFFFF ]/ g,''))"

Utilice una expresión regular para limitar la entrada a números: onkeyup="value=value.replace(/[^\d]/g,'')" onbeforepaste= "clipboardData .getData('text').replace(/[^\d]/g,''))"

Utilice expresiones regulares para limitar la entrada a números e inglés: onkeyup="value=value reemplazar(/[\W]/g, '')" onbeforepaste="clipboardData.setData('text', clipboardData.getData('text').replace(/[^\d]/g, '')) " Fuente: Blue IdealBlue Ideal

No hace mucho, escribí una macro EmEditor de 2 secciones para contar el número de líneas de código y realizar comprobaciones de convenciones simples. Después de ordenar un poco,

el siguiente es un ejemplo extraído de las preguntas y respuestas de EmEditor: Una cadena entre comillas dobles

Una cadena entre comillas dobles

".*?"

Por [ ]

[[^\[]*?\Nombre de variable

Nombre de variable

[a-zA- Z_ ][a-zA-Z_0-9]* Dirección IP

Dirección IP

([0-9]{1,3})/.([0-9] { 1,3})\.([0-9]{1,3})\... ([0-9]{1,3})\.([0-9]{1,3}) \ .([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9] { 1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\. [0-9]{1,3})\.(/[^#\s]*)(#(\S ))?La línea va seguida de un carácter de tabulación

La línea va seguida de por un carácter de tabulación Símbolo

(t.*$ Hiragana (hiragana) Hiragana (hiragana)

Hiragana (hiragana)

[\x{3041}- \ x{309e}] Katakana de ancho completo (Katakana de ancho completo)

Katakana de ancho completo (Katakana de ancho completo)

[\x{309b}-\x{ 309c }\x{30a1}-\Katakana de ancho medio

Katakana de ancho medio

[(x{ff61}-(x{ff9f}] Kanji chino, japonés y coreano

Ideogramas chinos, japoneses y coreanos

[(x{3400}-\Símbolos ideográficos chinos, japoneses y coreanos

[\x{3000}-\ x{3037}] Caracteres coreanos

Hangul

[\x{1100}-\x{11f9}\x{3131}-\x{318e}\x{ac00} -\x{d7a3}] Inserción de línea

Insertar //

Al principio de la línea //

Buscar: ^

Reemplazar con: // Eliminar el encabezado. //

Eliminar // ​​al final de las líneas

Buscar: ^//

Reemplazar: eliminar los espacios en blanco finales

Eliminar el espacio en blanco final

Buscar.: \s ?

Reemplazar con: reemplazar (abc) con [abc]

Reemplazar (abc) con [abc]

Buscar: \((. *?) \)

Reemplazar: \[\1\] Reemplazar lt; ;

Reemplazar lt; H3 ...gt; con lt; H4 ...gt

Buscar: lt; p> Reemplazar: lt; H4\1gt; Reemplazar 13/9/2003 con 13 de septiembre de 2003

Reemplazar 13/9/2003 con 2003.9.13

Buscar: ([0 -9]{1, 2})/([0-9]{1, 2})/([ 0-9]{2, 4})

Reemplazar: \2 de enero, 3 Reemplazar Caracteres a-z con letras mayúsculas

Letras mayúsculas de la a a la z

Buscar: [a-z]

Reemplazar: \letra mayúscula

Todos palabras en letras mayúsculas

Buscar: ([a-zA-Z])([a-zA-Z]*)

Reemplazar: \U\1\L\ 2