Estoy tratando de deshacerme de todo después de una columna en Notepad ++. El modo de columna no es una opción. ¿Es posible?
Lo que tengo:
70.97.110.40 159 ms [n/a] 21
70.97.117.177 134 ms [n/a] 21
70.97.120.10 75 ms [n/a] 21
70.97.122.105 87 ms www.portless.net 21
70.97.122.106 89 ms www.popovetsky.org 21
70.97.122.107 95 ms www.psmythe.net 21
70.97.122.104 98 ms wasabi.prostructure.com 21
70.97.122.108 89 ms crm.prostructure.com 21
70.97.122.109 87 ms internal.prostructure.com21
Lo que quiero:
70.97.110.40
70.97.117.177
70.97.120.10
70.97.122.105
70.97.122.106
70.97.122.107
70.97.122.104
70.97.122.108
70.97.122.109
Respuestas:
Si los datos en la primera columna nunca contienen un espacio, puede usar una expresión regular buscar y reemplazar para obtener lo que desea.
En el modo de expresión regular, busque:
Y reemplazar con
Lo que esto hace:
^
indica que cualquier coincidencia debe comenzar al comienzo de una línea.([^ ]*)
es cualquier expresión que no contiene un espacio. La coincidencia es codiciosa, por lo que coincidirá con todo hasta el primer espacio (o el final de la línea, lo que ocurra primero)..*
es todo lo demás en la línea.\1
se refiere a la parte de la coincidencia dentro de los paréntesis. Es decir, toda la línea se reemplaza solo por el bit de la primera columna.fuente
Aquí hay una expresión regular más simple que puede usar para lograr el mismo efecto. Reemplazar
(tenga en cuenta el espacio inicial)
sin nada. Esto eliminará todo después e incluyendo el primer espacio. Esto funcionará siempre que sus direcciones IP nunca tengan el prefijo de ningún espacio en blanco (como es el caso en su ejemplo).
fuente
[ \t].*
\s.*
es más corto. Tal vez incluso usar\s+.*
, para que coincida con una cantidad arbitraria de espacios en blanco, ahora que estamos codificando a la defensiva .Si está utilizando Windows y no le importa los espacios finales (puede encontrarlos / reemplazarlos después), use la función Seleccionar bloque :
fuente
Una expresión regular es más rápida, pero puede hacer algunas cosas realmente difíciles con macros si es una tarea más complicada.
Podrías grabar una macro:
Luego reprodúcelo:
fuente
Coloque el cursor después
70.97.110.40
.Presione Alty arrastre el cursor hacia la derecha y hacia abajo para seleccionar la parte no deseada.
Presione Backspaceo Delete.
fuente
Aquí hay un par de métodos alternativos a la respuesta dada.
Si sus datos son
fixed width
, también puede usar la siguiente expresión regular en la búsqueda:Encontrar que:
^(.{16}).*$
Reemplazar con:
\1
Es genial si los datos que desea conservar contienen un espacio, como alguien mencionó. Además, de nuevo para datos de ancho fijo, puede usar
Column Mode Editing
. Es una pequeña característica que le permite editar varias líneas de datos en la misma ubicación de columna. Ver Edición de modo de columna .Hace mención a las teclas de flecha, pero también puede usar
Page Up/Down
un método más rápido, así como las teclasEnd
yHome
. El mouse también funciona. Pero podría usar esto para un método ad hoc de eliminación de datos después de un cierto punto, especialmente si son solo unas pocas líneas. También es bueno para copiar datos, pero la forma en que se pega es un poco extraña, por lo que querrá acostumbrarse a eso primero.fuente
Similar a entusiasmar:
Si hay una línea en blanco al final del archivo, simplemente presione Up Arrowantes del # 3.
No es perfecto, pero es útil.
fuente
fuente
Aquí hay una forma visual:
Esto no está 'basado en columnas'. Solo funciona porque todas sus direcciones IP están alineadas.
fuente
En el modo de expresión regular, busque:
\ t. *
Y reemplazar con
Nada
fuente
Eliminar todo después de la primera columna en Notepad ++:
fuente