Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Replace- poczatek linii

8 views
Skip to first unread message

admiral

unread,
Nov 21, 2008, 9:43:18 AM11/21/08
to
Witam!

Mam swiezackie pytanie.
Nie moge sobie poradzic sobie ze zmiana:
"aaa
bbb
ccc"

na
"X aaa
X bbb
X ccc"

Kombinuje z s.replace("^.","X \1") ale nie dziala. Szukalem w
dokumentacji, ale tylko robi sie bardziej skomplikowane...
Czy musze uzywac s.compile, aby skorzystac ze znaku "^"? I jak ew.
uzyc tego kompilowania w kontekscie s.replace?
Czy jest jakis odpowiednik "\n" dla poczatku linii?

Bede wdzieczny za porade,
Piotr

dch

unread,
Nov 21, 2008, 10:12:40 AM11/21/08
to

> Kombinuje z s.replace("^.","X \1") ale nie dziala. Szukalem w
s.replace('\n','\nX')

admiral

unread,
Nov 21, 2008, 10:21:00 AM11/21/08
to
On 21 Lis, 16:12, dch <dhc...@gmail.com> wrote:
> > Kombinuje z s.replace("^.","X \1") ale nie dziala. Szukalem w
>
> s.replace('\n','\nX')

Tak zrobilem, a pozniej dodalem na poczatku jedno X i usunalem z
konca, ale tak na przyszlosc, to ten znaczek "^" dziala tylko przy
s.compile ?
P.

Artur M. Piwko

unread,
Nov 21, 2008, 10:24:59 AM11/21/08
to
In the darkest hour on Fri, 21 Nov 2008 07:21:00 -0800 (PST),
admiral <KiP.Kolo...@gmail.com> screamed:

>> > Kombinuje z s.replace("^.","X \1") ale nie dziala. Szukalem w
>>
>> s.replace('\n','\nX')
>
> Tak zrobilem, a pozniej dodalem na poczatku jedno X i usunalem z
> konca, ale tak na przyszlosc, to ten znaczek "^" dziala tylko przy
> s.compile ?

Nie. Działa przy dodanym re.MULTILINE.

--
[ Artur M. Piwko : Pipen : AMP29-RIPE : RLU:100918 : From == Trap! : SIG:238B ]
[ 16:24:33 user up 11898 days, 4:19, 1 user, load average: 0.97, 0.28, 0.35 ]

If you die in an elevator, be sure to push the Up button. -- Sam Levenson

Marcin Sztolcman

unread,
Nov 21, 2008, 12:14:07 PM11/21/08
to
On 08-11-21 16:24, Artur M. Piwko wrote:

>>>> Kombinuje z s.replace("^.","X \1") ale nie dziala. Szukalem w
>>> s.replace('\n','\nX')
>> Tak zrobilem, a pozniej dodalem na poczatku jedno X i usunalem z
>> konca, ale tak na przyszlosc, to ten znaczek "^" dziala tylko przy
>> s.compile ?
>
> Nie. Działa przy dodanym re.MULTILINE.

Ekhm. Metoda replace ma się nijak do MULTILINE. Metoda replace to metoda
stringa, natomiast re.MULTILINE to regexpy ;)

Do przedpiszcy:
Nie, ^ nie działa tak jak chcesz tylko dla re.compile. ^ działa tak dla
regexpów, np:
import re
print re.sub ('^', 'X ', 'napis')

MySZ

--
Marcin Sztolcman :: http://urzenia.net/ :: http://sztolcman.eu/

Artur M. Piwko

unread,
Nov 22, 2008, 7:06:34 PM11/22/08
to
In the darkest hour on Fri, 21 Nov 2008 18:14:07 +0100,
Marcin Sztolcman <msz...@poczta.onet.pl> screamed:

>>>>> Kombinuje z s.replace("^.","X \1") ale nie dziala. Szukalem w
>>>> s.replace('\n','\nX')
>>> Tak zrobilem, a pozniej dodalem na poczatku jedno X i usunalem z
>>> konca, ale tak na przyszlosc, to ten znaczek "^" dziala tylko przy
>>> s.compile ?
>>
>> Nie. Działa przy dodanym re.MULTILINE.
>
> Ekhm. Metoda replace ma się nijak do MULTILINE. Metoda replace to metoda
> stringa, natomiast re.MULTILINE to regexpy ;)

Miałem na myśli regexp. Nie wynikało to z zostawionego przeze mnie
cytatu.

--
[ Artur M. Piwko : Pipen : AMP29-RIPE : RLU:100918 : From == Trap! : SIG:225B ]
[ 01:05:44 user up 11900 days, 13:00, 1 user, load average: 0.81, 0.50, 0.19 ]

Young at Heart. Slightly Older in Other Places.

0 new messages