Extraer números del archivo txt

Extraer números del archivo txt

Tengo una gran lista en un archivo txt de información de contacto. Necesito tomar los números de teléfono de una estructura como esta:

ejemplo

Necesitaría que el resultado fuera solo con números en el texto, por ejemplo:

  • 4149611000
  • 4143620851
  • 3605966100
  • 3096949898
  • etc.

¿Qué comando en el cmd podría solucionar esto?

Respuesta1

tl; drperl -lne 'print $1 while /(\d{10})/g' filenames.txt ...


$ cat n.txt
aaaa 0123456789 bbbb
apple banana cucumber
9876543210 ccc ccc ccc
ppp qqq 12345 rrr sss
$ perl -lne 'print $1 if /(\d{10})/' n.txt
0123456789
9876543210

Si puede haber varios números de teléfono por línea y los desea todos:

$ echo double 1111111111 number 2222222222 here >> n.txt
$ perl -lne 'print $1 while /(\d{10})/g' n.txt
0123456789
9876543210
1111111111
2222222222

Si el número de teléfono es siempre el quinto campo separado por comas, puede utilizar

$ perl -F, -lne 'print $F[4]' m.txt 
PHONE
1234567890
0987654321

Tenga en cuenta que Perl tiene índices basados ​​en 0 (0,1,2, no 1,2,3)

O utilice herramientas más sencillas:

$ cut -d, -f5 m.txt
PHONE
1234567890
0987654321

Lo anterior se realizó usando WSL en Windows 10, pero el Perl nativo de Windows está disponible para el símbolo del sistema de Windows 10. Como esto:

C> perl -lne "print $1 while /(\d{10})/g" n.txt
0123456789
9876543210
1111111111
2222222222

Es casi seguro que hay una manera de hacer esto en PowerShell (aunque probablemente sea más necesario escribir)

Respuesta2

Usando Powershell, pruebe los siguientes cmdlets:

Get-Content -Path C:\path\to\yourfile.txt | Select-String "\d{10}" -AllMatches | ForEach {$_.Matches} | Select Value

O

Select-String -Path "C:\path\to\yourfile.txt" -Pattern "\d{10}" -AllMatches | Select -ExpandProperty Matches | Select Value

Esto mostrará sólo números de longitud de 10 dígitos. Si desea la salida en un archivo:

Get-Content -Path C:\path\to\yourfile.txt | Select-String "\d{10}" -AllMatches | ForEach-Object {$_.Matches} | Select Value | Out-File output.txt

información relacionada