Thread View: pl.comp.lang.python
12 messages
12 total messages
Started by Jeremiasz Kafelski
Thu, 28 May 2009 20:35
dopasować
Author: Jeremiasz Kafelski
Date: Thu, 28 May 2009 20:35
Date: Thu, 28 May 2009 20:35
8 lines
1029 bytes
1029 bytes
Jak w czystym pythonie dopasować stringi? mam dlugi string "abcdeefegr" i kilka mniejszych ab bc abc ee e d f g r jak zamienic ten dlugi na kolejne krotsze? czyli np. abc+d+ee+f+e+g+r
Re: dopasować
Author: Marek Wywiał
Date: Fri, 29 May 2009 06:54
Date: Fri, 29 May 2009 06:54
13 lines
1615 bytes
1615 bytes
On May 28, 10:35 pm, Jeremiasz Kafelski <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: > Jak w czystym pythonie dopasować stringi? > > mam dlugi string "abcdeefegr" > > i kilka mniejszych ab bc abc ee e d f g r > > jak zamienic ten dlugi na kolejne krotsze? > czyli np. abc+d+ee+f+e+g+r Pewnie można prościej, ale mi wyszło tak: * http://wklej.to/YcQs
Re: dopasować
Author: Marek Wywiał
Date: Fri, 29 May 2009 06:57
Date: Fri, 29 May 2009 06:57
20 lines
1838 bytes
1838 bytes
On May 29, 8:54 am, Marek Wywiał <onj...@gmail.com> wrote: > On May 28, 10:35 pm, Jeremiasz Kafelski > > <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: > > Jak w czystym pythonie dopasować stringi? > > > mam dlugi string "abcdeefegr" > > > i kilka mniejszych ab bc abc ee e d f g r > > > jak zamienic ten dlugi na kolejne krotsze? > > czyli np. abc+d+ee+f+e+g+r > > Pewnie można prościej, ale mi wyszło tak: > *http://wklej.to/YcQs dla bezpieczeństwa lepiej zamienić: * src = src.replace(part, '') na * src = src.replace(part, '', 1)
Re: dopasować
Author: Radomir Dopieralski
Date: Fri, 29 May 2009 10:11
Date: Fri, 29 May 2009 10:11
24 lines
1813 bytes
1813 bytes
At Thu, 28 May 2009 22:35:51 +0200, Jeremiasz Kafelski wrote:
> Jak w czystym pythonie dopasować stringi?
>
> mam dlugi string "abcdeefegr"
>
> i kilka mniejszych ab bc abc ee e d f g r
>
> jak zamienic ten dlugi na kolejne krotsze?
> czyli np. abc+d+ee+f+e+g+r
import re
input_string = "abdeefegr"
substrings = ["ab", "bc, "abc", "ee", "e", "d", "f", "g", "r"]
substr_pat = '|'.join(re.escape(s) for s in substrings)
substr_re = re.compile(substr_pat)
for match in substr_re.finditer(input_string):
part = match.lastgroup()
...
--
Radomir Dopieralski, http://sheep.art.pl
Re: dopasować
Author: Jeremiasz Kafelski
Date: Fri, 29 May 2009 15:25
Date: Fri, 29 May 2009 15:25
16 lines
1607 bytes
1607 bytes
>> Pewnie można prościej, ale mi wyszło tak: >> *http://wklej.to/YcQs > > dla bezpieczeństwa lepiej zamienić: > * src = src.replace(part, '') > na > * src = src.replace(part, '', 1) A o to daje? Jak dodam w stringu dane ktorych nie ma w przykladach to glupieje. Ale dziala. I bardzo dziekuje. Ucze sie dopiero pythona i strasznie marnie mi idzie. Choc udalo mi sie w koncu napisac strone WWW. Teraz musze tylko napisac system komentarzy/ksiege gosci w django. Ale opisy sa jakies zakrecone deczko.
Re: dopasować
Author: Jeremiasz Kafelski
Date: Fri, 29 May 2009 15:28
Date: Fri, 29 May 2009 15:28
4 lines
1063 bytes
1063 bytes
Pospieszylem sie ;( http://wklej.to/Rvum nie dziala
Re: dopasować
Author: Marek Wywiał
Date: Fri, 29 May 2009 17:40
Date: Fri, 29 May 2009 17:40
19 lines
2051 bytes
2051 bytes
On May 29, 5:28 pm, Jeremiasz Kafelski <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: > Pospieszylem sie ;(http://wklej.to/Rvum > > nie dziala nie wiem jakie masz konkretne założenia. w moim skrypcie założyłem, że staram się dopasować kolejne kawałki, od największego do najmniejszego, do początku ciągu. Gdy znajduję dopasowania skracam ciąg o tę część. W drugim przypadku dopasowanie zakończyło się po znalezieniu początku abc, d, c i nie znalezieniu częsci pasującej do * wfjcfymhlqfopeefegr napisz jakie masz wymagania co do algorytmu, lub zmodyfikuj go na własne potrzeby :) powodzenia
Re: dopasować
Author: Jeremiasz Kafelski
Date: Sat, 30 May 2009 07:15
Date: Sat, 30 May 2009 07:15
27 lines
1825 bytes
1825 bytes
Marek Wywiał wrote: > On May 29, 5:28 pm, Jeremiasz Kafelski > <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: >> Pospieszylem sie ;(http://wklej.to/Rvum >> >> nie dziala > > nie wiem jakie masz konkretne założenia. w moim skrypcie założyłem, że > staram się dopasować kolejne kawałki, od największego do > najmniejszego, do początku ciągu. Gdy znajduję dopasowania skracam > ciąg o tę część. Ale zobacz wynik $ ./dop2.py got: ['abc', 'dd', 'e', 'a', 'abc', 'd', 'cc', 'c', 'c', 'fe', 'e', 'e', 'fe'] left: i dane src = 'abcddeaabcdccccfeeefe' parts = ['ab','bc','abc','ee','a','b','c','d','dd','cc','e','fe','g'] o dziwo nie dopasował cc i cc ale cc i c c
Re: dopasować
Author: Marek Wywiał
Date: Sat, 30 May 2009 12:17
Date: Sat, 30 May 2009 12:17
30 lines
2494 bytes
2494 bytes
On May 30, 9:15 am, Jeremiasz Kafelski <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: > Marek Wywiał wrote: > > On May 29, 5:28 pm, Jeremiasz Kafelski > > <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: > >> Pospieszylem sie ;(http://wklej.to/Rvum > > >> nie dziala > > > nie wiem jakie masz konkretne założenia. w moim skrypcie założyłem, > że > > staram się dopasować kolejne kawałki, od największego do > > najmniejszego, do początku ciągu. Gdy znajduję dopasowania skracam > > ciąg o tę część. > > Ale zobacz wynik > > $ ./dop2.py > got: ['abc', 'dd', 'e', 'a', 'abc', 'd', 'cc', 'c', 'c', 'fe', 'e', > 'e', 'fe'] > left: > > i dane > src = 'abcddeaabcdccccfeeefe' > parts = ['ab','bc','abc','ee','a','b','c','d','dd','cc','e','fe','g'] > > o dziwo nie dopasował cc i cc ale cc i c c no tak, skrypt nie usuwa zużytych/dopasowanych parts, trzeba by je usuwać, jeśli mają być użyte tylko raz
Re: dopasować
Author: Jeremiasz Kafelski
Date: Sat, 30 May 2009 15:55
Date: Sat, 30 May 2009 15:55
39 lines
2398 bytes
2398 bytes
Marek Wywiał wrote: > On May 30, 9:15 am, Jeremiasz Kafelski > <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: >> Marek Wywiał wrote: >> > On May 29, 5:28 pm, Jeremiasz Kafelski >> > <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: >> >> Pospieszylem sie ;(http://wklej.to/Rvum >> >> >> nie dziala >> >> > nie wiem jakie masz konkretne założenia. w moim skrypcie założyłem, >> że >> > staram się dopasować kolejne kawałki, od największego do >> > najmniejszego, do początku ciągu. Gdy znajduję dopasowania skracam >> > ciąg o tę część. >> >> Ale zobacz wynik >> >> $ ./dop2.py >> got: ['abc', 'dd', 'e', 'a', 'abc', 'd', 'cc', 'c', 'c', 'fe', 'e', >> 'e', 'fe'] >> left: >> >> i dane >> src = 'abcddeaabcdccccfeeefe' >> parts = ['ab','bc','abc','ee','a','b','c','d','dd','cc','e','fe','g'] >> >> o dziwo nie dopasował cc i cc ale cc i c c > > no tak, skrypt nie usuwa zużytych/dopasowanych parts, > trzeba by je usuwać, jeśli mają być użyte tylko raz no nie. maja byc uzyte wlasnie wiele razy. Albo ja nie rozumiem. w got: nie mam dwoch 'cc' i 'cc' a powinno byc. To w takim razie gdzie jest wynik?
Re: dopasować
Author: Marek Wywiał
Date: Sun, 31 May 2009 11:49
Date: Sun, 31 May 2009 11:49
49 lines
3260 bytes
3260 bytes
On May 30, 5:55 pm, Jeremiasz Kafelski <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: > Marek Wywiał wrote: > > On May 30, 9:15 am, Jeremiasz Kafelski > > <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: > >> Marek Wywiał wrote: > >> > On May 29, 5:28 pm, Jeremiasz Kafelski > >> > <jjjjjjjjjjjjjjjjj...@jggjjj.pl> wrote: > >> >> Pospieszylem sie ;(http://wklej.to/Rvum > > >> >> nie dziala > > >> > nie wiem jakie masz konkretne założenia. w moim skrypcie > założyłem, > >> że > >> > staram się dopasować kolejne kawałki, od największego do > >> > najmniejszego, do początku ciągu. Gdy znajduję dopasowania skracam > >> > ciąg o tę część. > > >> Ale zobacz wynik > > >> $ ./dop2.py > >> got: ['abc', 'dd', 'e', 'a', 'abc', 'd', 'cc', 'c', 'c', 'fe', 'e', > >> 'e', 'fe'] > >> left: > > >> i dane > >> src = 'abcddeaabcdccccfeeefe' > >> parts = > > ['ab','bc','abc','ee','a','b','c','d','dd','cc','e','fe','g'] > > > > >> o dziwo nie dopasował cc i cc ale cc i c c > > > no tak, skrypt nie usuwa zużytych/dopasowanych parts, > > trzeba by je usuwać, jeśli mają być użyte tylko raz > > no nie. maja byc uzyte wlasnie wiele razy. Albo ja nie rozumiem. > w got: nie mam dwoch 'cc' i 'cc' a powinno byc. > > To w takim razie gdzie jest wynik? znalazł 'cc' w 'cccc...' potem następny part 'c' w 'cc..' i zostało 'c...' więc w następnej iteracji już tylko 'c' pasowało, musiałbyć po każdym dopasowaniu restartować pętlę
Re: dopasować
Author: Jeremiasz Kafelski
Date: Mon, 01 Jun 2009 05:12
Date: Mon, 01 Jun 2009 05:12
13 lines
1785 bytes
1785 bytes
>> no nie. maja byc uzyte wlasnie wiele razy. Albo ja nie rozumiem. >> w got: nie mam dwoch 'cc' i 'cc' a powinno byc. >> >> To w takim razie gdzie jest wynik? > > znalazł 'cc' w 'cccc...' > potem następny part 'c' w 'cc..' > i zostało 'c...' > więc w następnej iteracji już tylko 'c' pasowało, > musiałbyć po każdym dopasowaniu restartować pętlę A jak to zrobić? aby za kazdym razem dopasowywal do najdluzszego ciagu.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads