Expresión regular para agregar espacio después de 10 dígitos

Expresión regular para agregar espacio después de 10 dígitos

¿Cómo haría para escribir una expresión regular para realizar una operación de búsqueda/reemplazo para agregar un espacio después de 10 dígitos de cualquier número que tenga 20 dígitos?

Tengo una larga lista de números de teléfono donde algunos de ellos tienen accidentalmente 20 dígitos y necesito agregar un espacio entre cada instancia de eso.

Editar: Probé \d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d que selecciona números de 20 dígitos, pero reemplazar eso con un espacio simplemente reemplazará los 20 dígitos con espacios en blanco en lugar de insertar un espacio después de 10 dígitos.

Estoy intentando hacer esto con Sublime Text en una MacBook Pro.

Respuesta1

necesitas usarGrupos de capturasi desea realizar operaciones de reemplazo conservando los componentes de la cadena original.

su expresión regular seguiría algo como:

patrón: "^([\d]{10})([\d]{10})" //two groups of 10

reemplazar: "$1 $2"

Los paréntesis alrededor de cada patrón para un bloque de diez definen un grupo de captura. entonces estamos diciendo, "los primeros diez dígitos del grupo $1 y los segundos 10 están en el grupo $2". luego simplemente decimos "imprimir el grupo 1, agregar un espacio e imprimir el grupo 2".

Tenga en cuenta que cada plataforma es diferente en términos de sintaxis Regex y sintaxis de reemplazo. muchos lo usan $number(como sed), otros lo usan \number(como notepad++), así que asegúrese de consultar la documentación de su producto.

información relacionada