🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #14171

Re: Borrado de línea

#14171
From: Jimenez Martinez Angel Luis
Date: Wed, 29 Nov 2000 00:00
62 lines
2478 bytes
oscar (omgs@NOSPAMinicia.es) wrote:
> Quiero sustituir una l=EDnea de texto. Digamos que la l=EDnea empieza por=

> "texto" contin=FAa con un n=FAmero o cualquier n=FAmero n=FAmero de carac=
> teres.
> As=ED, si la l=EDnea tiene "texto 4464" (o cualquier otro n=FAmero de no =
> se
> sabe qu=E9 longitud), reemplazarlo por "texto 4" (o el n=FAmero que yo
> elija).

> Con sed consigo reemplazar, pero s=F3lo he conseguido hacerlo con cadenas=

> de texto fijas. Aqu=ED ser=EDa una cadena variable desde el principio has=
> ta
> fin de l=EDnea.

> Seguro que es una tonter=EDa, pero he mirado man sed y no he sabido
> encontrar la opci=F3n adecuada.

> Gracias.

Hola,

	Para hacer lo que quieres tendrias que usar expresiones regulares.
	Mira a ver en alguna de pag. web. sobre programacion bajo linux,
	o dale una oportunidad a www.google.com buscando: "expresiones
	regulares" linux.

	De todas formas, y como ejemplo te vale el . 
	Este representa a cualquier caracter con lo cual la expresion
	...
	coincidira con cualquier palabras formada por 3 caracteres cualesquiera.
	O tambien esta el * que repite la expresion regular anterior 0 o n 
	veces.

	De esta forma a* coincide con la cadena vacia (0 veces la letra a), con
	aa, aaa, aaaa, aaaaa, aaaaaa...

	Puedes usar parentesis para agrupar expresiones como p.ej. 
	(cao)*
	que coincidira con la cadena vacia, o con cao, caocao, caocaocao, 
	caocaocaocao....

	Y como te habras imaginado, puedes combinar . y * de forma que:
	.*
	representa la cadena vacia o cualquier cadena.

	Con lo cual sed "s/texto 9.*/texto 10/g" reemplazaria todas las 
	ocurrencias de "texto 9" seguidas de nada o cualquier cjto. de 
	caracteres por "texto 10".

	De todas formas echale un vistazo a un doc. mas extenso sobre exprs.
	regulares, merece la pena...


	Saludos.





--
Technical Details
Message-ID: <902va1$83s$1@bernat.uji.es>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <3A2402CB.AC141A9B@NOSPAMinicia.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII-7-bit
X-Google-Thread: f86c8,64ccf8d467e9a5cd
X-Google-Attributes: gidf86c8,public
From: al026635@anubis.uji.es (Jimenez Martinez Angel Luis)
Subject: Re: Borrado de línea
Date: 2000/11/29
Message-ID: <902va1$83s$1@bernat.uji.es>
X-Deja-AN: 699111150
References: <3A2402CB.AC141A9B@NOSPAMinicia.es>
X-Complaints-To: news@news.uji.es
X-Trace: bernat.uji.es 975503489 8316 150.128.40.100 (29 Nov 2000 13:11:29 GMT)
Organization: Universitat Jaume I
NNTP-Posting-Date: 29 Nov 2000 13:11:29 GMT
Newsgroups: es.comp.os.linux.programacion