DEV Community

Elena Allende
Elena Allende

Posted on

RegEx: Una Forma de Extraer Fácilmente Números de Teléfono

En el proceso de llevar a cabo actividades empresariales, la capacidad de obtener la información de contactos de los clientes potenciales está relacionada con la obtención o no de una mayor oportunidad. Entonces, ¿cómo extraer números de teléfono de páginas web de forma masiva? ¿O cómo extraer números de teléfono de archivos de texto o cadenas? Usando RegEx podemos fácilmente lograr la extracción y limpieza de datos, este artículo será un tutorial principalmente para no-codificadores y principiantes, ¡acérquense para aprenderlo!

I. ¿Qué es la RegEx(una expresión regular)?

En primer lugar, tenemos que entender qué es RegEx antes de empezar.

Las abreviaturas regex y regexp denotan expresiones regulares utilizadas en informática teórica, programación, desarrollo de software, procesamiento de textos y optimización de motores de búsqueda. – Referencia de Wikipedia

Las expresiones regulares pueden utilizarse para describir cadenas y números de cadenas de una forma lógica de propósito general, de modo que puedan buscarse, sustituirse, manipularse o procesarse en documentos, código fuente o bases de datos.

Los usos de las expresiones regulares son muy diversos. La representación de las expresiones regulares depende de la notación. Los distintos lenguajes de programación tienen representaciones diferentes. Estas notaciones se denominan nombres de patrones de shell, BRE (Expresiones Regulares Básicas) y ERE (Expresiones Regulares Extendidas).

Sus diferencias se deben a veces a los caracteres individuales utilizados en el lenguaje de programación, especialmente los metacaracteres (caracteres de control).

II. ¿Por qué utilizar la RegEx para extraer números de teléfono?

Pongamos un ejemplo: quieres extraer todas las direcciones de correo electrónico de una página web a la vez, y el sitio contiene innumerables direcciones de correo electrónico esparcidas aleatoriamente por todas partes.

En este caso, puede utilizar la fórmula “CONTROL + F” para buscar el símbolo “@“, porque no hay duda de que las direcciones de correo electrónico contienen el símbolo “@“.

Lo mismo se aplica a la extracción de números de teléfono, ya que se ajustan a una determinada estructura fija, a la que Regex puede apuntar en un gran número de datos de información de acuerdo con una determinada estructura.

Si puedes escribir una RegEx que especifique el mismo patrón para estos números de teléfono, puedes introducir el código a través de la función “Buscar” de un editor de texto que maneje expresiones regulares (como Notepad++), y los datos que buscas aparecerán ante tus ojos.

III. ¿Cómo escribir RegEx? (reglas básicas de las expresiones regulares)

Si desea utilizar una expresión regular para extraer números de teléfono pero no sabe cómo escribir dicha expresión, este artículo puede proporcionarle algunas buenas herramientas regex que le ayudarán a escribir rápidamente la expresión regular correcta.

Aprendiendo los Fundamentos de la RegEx
Aprender la RegEx desde cero lleva tiempo. Sin embargo, si usas la RegEx mucho en tu trabajo diario y puede mejorar significativamente tu productividad, entonces vale la pena.

Image description

Dado que las reglas básicas para principiantes son bastante complejas, no volveremos sobre ellas.

Si quieres aprovechar RegEx de una manera más sencilla, la herramienta RegEx será perfecta para ti.

Apóyate en la Inteligencia Artificial (ChatGPT)
Las herramientas de IA están tan avanzadas hoy en día que podemos escribir expresiones regulares con ChatGPT igual que puede escribir código de rastreo (artículo relacionado con Chatgpt). Es más adecuado para los no-codificadores y novatos.

O bien especificas lo que quieres, por ejemplo “Escríbeme una expresión regular para extraer todas las cadenas de números que empiecen por 0 y terminen por 1 hasta 9”, o das una petición con certeza, por ejemplo “Escribe una expresión criterio para encontrar números en el texto de una llamada telefónica en español…”, y la IA lo hará por ti. “, AI te proporcionará un buen código.

Uso de la herramienta de RegEx Octoparse
Octoparse es un software de extracción de datos que incluye una herramienta RegEx en su software que facilita la limpieza de datos. Puede utilizarla para extraer datos que empiecen o terminen con o contengan elementos específicos. (Descargar Octoparse ahora)

Ejemplo de la extracción de número de teléfono con RegEx
Pueden ser varios números de teléfono en una sola cadena grande, y estos números de teléfono pueden estar en diferentes formatos. A continuación se muestra un ejemplo de formato de archivo:

– (021)1234567
– (123) 456 7899
– (123).456.7899
– (123)-456-7899
– 123-456-7899
– 123 456 7899
– 1234567899
– 0511-4405222
– 021-87888822
– +8613012345678
– ..

¿Cuál es el método más sencillo para extraer un número de teléfono como éste? Ahora vamos a utilizar la herramienta para generar expresiones regulares y encontrar todos los números de teléfono rápidamente.

En primer lugar, encontrar el carácter común que cada número de teléfono comienza y termina con. Por ejemplo, para el texto de destino anterior, encuentro el código fuente que se muestra a continuación.

<p>Este es un ejemplo de formato de archivo</p>
<ul>
<li>(021)1234567 </li>
<li>(123) 456 7899 </li>
<li>(123).456.7899 </li>
<li>(123)-456-7899 </li>
<li>123-456-7899 </li>
<li>123 456 7899 </li>
<li>1234567899 </li>
<li>0511-4405222 </li>
<li>021-87888822 </li>
<li>+8613012345678 </li>
<li>... </li>
</ul>
Enter fullscreen mode Exit fullscreen mode

Cada número de teléfono empieza por /li y termina por /li.

Podemos utilizar la herramienta RegEx de Octoparse para extraer rápidamente todos los números de teléfono.

Inicie Octoparse y abra la herramienta RegEx.
Copie el código fuente y péguelo en el campo “Texto original“.
A continuación, seleccione la opción “Empezar con” y escriba “li”.
A continuación, seleccione la opción “Terminar con” y escriba “/li”.
No olvides seleccionar la opción “Coincidir todo”.
Haga clic en “Match”.

Conclusión
El progreso tecnológico nunca es fácil, y la historia del origen de las expresiones regulares Regex lo demuestra. (Qué son y cómo usar expresiones regulares RegEx)

En este artículo intentamos limpiar y extraer la información que necesitamos (como números de teléfono) usando expresiones regulares RegEx en Octoparse, y no se puede negar que nos aporta una mayor eficiencia. Si tienes conocimientos de Python o una base de programación, también puedes utilizar una de las bibliotecas de RegEx para filtrar y limpiar datos, que merece la pena explorar.

Espero que hayas disfrutado de este artículo y ¡muchas gracias por leerlo!

Top comments (0)