Estoy tratando de encontrar todos los valores con el siguiente patrón:
value="4"
value="403"
value="200"
value="201"
value="116"
value="15"
y reemplácelo con valor dentro de ámbitos.
Estoy usando la siguiente expresión regular para encontrar el patrón:
.*"\d+"
¿Cómo puedo hacer un reemplazo?
Respuestas:
En Notepad ++ para reemplazar, presione Ctrl+ Hpara abrir el menú Reemplazar.
Luego, si marca el botón "Expresión regular" y desea en su reemplazo usar una parte de su patrón de coincidencia, debe usar "grupos de captura" (lea más en Google ). Por ejemplo, digamos que desea hacer coincidir cada una de las siguientes líneas
usando el
.*"\d+"
patrón y desea mantener solo el número. A continuación, puede utilizar un grupo de captura en su coincidencia de patrones, usando paréntesis(
y)
, de esa manera:.*"(\d+)"
. Entonces, en su reemplazo, simplemente puede escribir$1
, donde $ 1 hace referencia al valor del primer grupo de captura y devolverá el número para cada coincidencia exitosa. Si tenía dos grupos de captura, por ejemplo(.*)="(\d+)"
,$1
devolverá la cadenavalue
y$2
devolverá el número.Entonces usando:
Encontrar:
.*"(\d+)"
Reemplazar:
$1
Te devolverá
Tenga en cuenta que existen muchas formas alternativas y mejores de hacer coincidir el patrón mencionado anteriormente. Por ejemplo, el patrón
value="([0-9]+)"
sería mejor, ya que es más específico y estarás seguro de que coincidirá solo con estas líneas. Incluso es posible realizar el reemplazo sin el uso de grupos de captura, pero este es un tema un poco más avanzado, así que lo dejo por ahora :)fuente
$1
no funcionó para mí. Usé en su\1
lugar y funcionó.\1
Funciona en todas las versiones de Notepad ++.$1
solo funciona en los más nuevos.Hex Editor
complemento. En el modo de vista hexadecimal, Notepad ++ no muestra laRegular Expression
opción de Buscar / Reemplazar. En el modo de vista de texto, veo laRegular Expression
opción de Buscar / Reemplazar. Estoy usando Notepad ++ Versión 6.9.2, que es la versión actual en este momento.psxls dio una gran respuesta, pero creo que mi versión de Notepad ++ es ligeramente diferente, por lo que la captura de $ (signo de dólar) no funcionó.
Tengo Notepad ++ v.5.9.3 y así es como puede realizar su tarea:
Busque el patrón: valor = \ "([0-9] *) \" y reemplácelo con: \ 1 (lo que quiera hacer con ese grupo de captura)
Ex. Rodear con corchetes
[\ 1] -> producirá valor = "[4]"
fuente
\1
Me ayudó a mantener el número pero eliminar la cita detrás de él. Tenía alrededor de 7400 líneas en un documento comotablename.columnname = '12345'
. La primera cita fue fácil de eliminar, la segunda se hizo usando su\1
en el cuadro de texto de reemplazo. Gracias, +1Reemplazar
(.*")\d+(")
Con
$1x$2
¿Dónde
x
está su "valor dentro de los ámbitos"?fuente
Tengo Notepad ++ v6.8.8
Buscar : [([a-zA-Z])]
Reemplazar : [\ '\ 1 \']
Producirá: $ matriz [XYZ] => $ matriz ['XYZ']
fuente
Encontrar:
value="([\d]+|[\d])"
Reemplazar:
\1
Realmente te devolverá
4
403
200
201
116
15
js:
fuente