Hola.
He estado buscando un programa que cuando el texto sea como este por ejemplo:
Un barco
Un mono
Tecnología
Y reemplazarlo por este:
Navegación
Un mono
Computadoras
Algo tan simple como eso no hay por ningún lado, que no, noten que solo cambio la primera y la tercera línea, los tantos programas que me he encontrado son con Notepad++ junto con ToolBucket y este no entiende que busco dos líneas diferentes, ésta quiere que las líneas sean seguidas, me he encontrado con éste otro:
(https://i.stack.imgur.com/zcLnb.png)
Que al parecer puede cumplir mi requisito con la opción "1 per line", sin embargo, el plugin no está disponible para 64 bits.
Me he encontrado con Ecobyte ReplaceText2.2 y ha sido el único que ha funcionado, PERO, cuando reemplaza caracteres como la ñ o las vocales con tilde da errores de codificación, supuestamente ese error solo pasa con Windows 7 entonces lo ejecuté en Modo de Compatibilidad para XP y el problema persiste así que no sirve.
También usé expresiones regulares pero repito, no entienden ni con /n ni con //n ó /r/n, ó en el peor de los casos soy yo que no los escribo bien jajaja
Gracias.
Cita de: jheberg en 20 Enero 2018, 06:03 AMó en el peor de los casos soy yo que no los escribo bien
Sin duda es eso.
Lo único que necesitas es construir correctamente los grupos de captura en una expresión regular. Como software te sirve cualquier editor de texto o pseudo-IDE que soporte RegEx... como el
Notepad++.
En el editor
Sublime Text, tomando el ejemplo que has dado al principio, podrías hacerlo por ejemplo así:
(Un barco)\n(Un mono)\n(Tecnología)
Y la cadena de reemplazamiento sería esta:
Navegación\n$2\nComputadoras
(https://i.imgur.com/n6PS9GC.gif)
saludos
Cita de: Eleкtro en 20 Enero 2018, 09:17 AM
En el editor Sublime Text, tomando el ejemplo que has dado al principio, podrías hacerlo por ejemplo así:
(Un barco)\n(Un mono)\n(Tecnología)
Y la cadena de reemplazamiento sería esta:
Navegación\n$2\nComputadoras
Ok, pero ten en cuenta que son miles de líneas que deseo reemplazar, usar expresiones regulares va a ser tedioso, aparte, en el Notepad++ no me funciona esa expresión :-\ y si que había visto algunos ejemplos en stackoverflow no sé si sea por la versión.
Además, el ejemplo que mostré fue solo a modo didáctico y pues hay un problema con tu expresión regular porque yo no tengo la necesidad de poner:
\n(Un mono)
Y ya probé el sublime y si no pongo mono, no funciona.
Siendo más específico debo reemplazar una lista de link's, sé en que orden deben ir, me gustaría colocar las mil líneas originales en un textarea y en el segundo las líneas modificadas, y como bien dice el título del post son para miles de archivos, TextCrawler por ejemplo permitía eso, sin embargo no pude hacerle entender que hablaba de líneas diferentes.
CitarOk, pero ten en cuenta que son miles de líneas que deseo reemplazar, usar expresiones regulares va a ser tedioso, aparte, en el Notepad++ no me funciona esa expresión :-\ y si que había visto algunos ejemplos en stackoverflow no sé si sea por la versión.
regex es más eficiente que texto plano, siempre es mucho menos tedioso, es cosa de saber como se usa, si no te funciona la expresión asegurte que tienes regex activado
da el caso exacto de ejemplo
sobre tu caso de ausencia de mono...
(Un barco)\n(.*)\n(Tecnología)
Navegación\n$2\nComputadoras
esto como ejemplo de potencia del regex
Cita de: engel lex en 20 Enero 2018, 13:07 PM
sobre tu caso de ausencia de mono...
(Un barco)\n(.*)\n(Tecnología)
Navegación\n$2\nComputadoras
Obvio que activo la casilla de regEx, pero yo digo que es tedioso por precisamente las líneas de reemplazo:
Navegación\n$2\nComputadoras
¿Cómo haces eso para mil líneas?
depende del caso...tienes que mostrar un caso preciso, porque puede que hayan cosas más faciles, o que simplemente te toque programar un script