Tecnología

Inicio

Cómo quitar todos los espacios en blanco en una cadena con expresiones regulares en Perl

En Perl, una expresión regular es uno o más caracteres que se utilizan para que coincida con los valores de cadenas, tales como letras específicas, las marcas de identificación o un espacio en blanco. Puede crear funciones que utilizan expresiones regulares con el operador de sustitución Perl para que coincida con los caracteres de espacio en blanco y eliminarlos. El carácter "^" le permite especificar sólo caracteres al principio de la cadena, el "$" le permite identificar sólo aquellos al final, o se puede omitir estos y que coincida con todos los espacios en blanco a lo largo de la cadena.

Instrucciones

1 Abrir un archivo de programa Perl, e insertar el cursor al principio.

2 Escriba el siguiente código:

sub trim ($) {

mi $ cadena = cambiar;

$ Cadena = ~ s / \ s + // g;

devolver $ string;

}

Esta función utiliza el operador de sustitución "s ///" para que coincida con los espacios en blanco y eliminarlos. La clase "\ s" carácter coincide con todos los caracteres de espacio en blanco y los reemplaza con nada. En otras palabras, los elimina. Devuelve una cadena que no contiene caracteres de espacio en blanco.

3 Escriba el siguiente código:

ltrim sub ($) {

mi $ cadena = cambiar;

$ Cadena = ~ s / ^ \ s + //;

devolver $ string;

}

Esta función sólo elimina los espacios en blanco que conduce antes de cualquier otro carácter. El "^ \ s" dice para que coincida con los espacios en blanco sólo hasta el primer carácter de espacio no blanca, y luego eliminarlos.

4 Escriba el siguiente código:

rtrim sub ($) {

mi $ cadena = cambiar;

$ Cadena = ~ s / \ s + $ //;

devolver $ string;

}

Esta función sólo elimina los espacios en blanco que lleva al final de la cadena. La "s + $", dice para que coincida con los espacios en blanco sólo después de que todos los caracteres de espacio no blancos, luego eliminarlos.

5 Guarde el archivo de programa.

Consejos y advertencias

  • Se puede escribir otra función que elimina los espacios en blanco de ambos los extremos izquierdo y derecho de una cadena, pero deja los espacios en blanco entre caracteres mediante la adopción de las expresiones regulares en el ltrim y funciones RTrim y el uso de los dos en una sola función.