🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.perl
Article #51682

Re: Wyrazenie regularne - jak poprawic... [Dlugie]

#51682
From: Kap
Date: Wed, 25 Nov 2009 13:57
81 lines
3819 bytes
Kap pisze:
> Witam. Mam taki problem kurcze i nie wiem jak to obejsc. Perla nie znam 
> praktycznie wcale. Mam oto taki kodzik (nie moj) i musze go delikatnie 
> zmodyfikowac. Wyrazenie filtruje kod html strony...
> 
> ponizej mam wzorzec (caly)
> 
> $accounts_re = qr{
> <p[ ]class="Account">
> <a[ ]id="\w+"[ ]title="Wybierz[ ]ten[ ]rachunek"[ ]onclick="([^"]*)" 
> [^>]*?>
> (.+?) [ ] (\d\d[ ]\d\d\d\d[ ]\d\d\d\d[ ]\d\d\d\d[ ]\d\d\d\d[ ]\d\d\d\d[ 
> ]\d\d\d\d)
> </a>
> </p>
> <p[ ]class="Amount">
> <a[ ]id="\w+"[ ]title="Zobacz[ ]operacje[ ]z[ ]ostatnich[ ]14[ ]dni" 
> [^>]*? onclick="([^"]*)" [^>]*?>
> (-?[0-9 ,]+) [ ] ([A-Z]+)
> </a>
> </p>
> <p[ ]class="Amount">
> <span[ ]id="\w+">
> (-?[0-9 ,]+) [ ] ([A-Z]+)
> </span>
> </p>
> }x;
> 
> dokladnie chodzi o linijke
> 
> <a[ ]id="\w+"[ ]title="Wybierz[ ]ten[ ]rachunek"[ ]onclick="([^"]*)"
> 
> Do wzorca (tylko do wyzej znajdujacego sie kawalka)
> 
> pasuje taki kod znajdujacy sie w pliku html
> 
> <a id="AccountsGrid_grid_ctl02_MLink_0_0" title="Wybierz ten rachunek" 
> onclick="doSubmit('account_details.aspx','','POST' 
> ,'jX+4yQigsXKVpZzD57noale9iTkPxSvFj9kWLKuLDwsctwgs 
> fUSvcMaPnujuvXK+IUZ7Ps0HHSpw+xi92mD0DkU0pQsICYhMpT 
> uKH+MC3d5/yTr7VoSZ/wGdRx7GzjEN5elhjaYV5zfns0pdbmqEqK6bXHTDusqw3NE3Agb 
> ek7RhUWhe2DVhtIJwfCEaxe5c7aKh5K7zeCgPnr9HeEGQT0J9M 
> HRvBsAQds3J32jbDFU=',false,false,false,null); return false;" 
> onmouseover="window.status = ''; return true;" href="#">
> 
> pasuje rowniez
> 
> <a id="AccountsGrid_grid_ctl03_MLink_1_0" title="Wybierz ten rachunek" 
> onclick="doSubmit('mobile_account_details.aspx','','POST',
> 'TlHUkx6aP1SCCC/4beAwuzygn6UpNbcE7djy4nsngQQU8iWp+mf7VOQDbIEW+gwb0 
> eQgItu53MWYvV6drtV5m39e2l3L2gVzUiFLOlhYRMDGnrdbl9n 
> 7v6+vXUeESqrctrcineVfdiFUq9LtvxbjCpThzv9cWVVj8B6BQ 
> zJTd6eX5+hSBT4D3xDzeS7CbJtc8Ezh+H6d6iXBpDgrS3XOYRt 
> WVTFyLVI+6YlAQvaK+dhF+7yt8LVwjbGpb+tdfqnovUy3DaT2K 
> ShksCzWJ2r9IA==',false,false,false,null); return false;" 
> onmouseover="window.status = ''; return true;" href="#">
> 
> I tego powyzej chce sie pozbyc - wystarczyloby chyba uscislic wzorzec 
> oryginalny
> 
> <a[ ]id="\w+"[ ]title="Wybierz[ ]ten[ ]rachunek"[ ]onclick="([^"]*)" 
> [^>]*?>
> 
> dodajac np doSubmit=('account_i dalej no wlasnie...
> 
> <a[ ]id="\w+"[ ]title="Wybierz[ ]ten[ ]rachunek"[ 
> onclick="doSubmit=('account_) [^>]*?>
> 
> 
> nie wiem co dalej i jak ten kawalek powinien byc zapisany
> bo wystapilby tam nawias "(" oraz "'"
> 
> Wszystkie moje wysilki spelzly na niczym :-(((
> Dlatego prosze o pomoc.
> 
> Kap

W porzdku Panowie, poradzilem sobie. Za rada znajomego dodalem ifa w 
petli przeszukujacej kod html przed wzorcem znajdujacym sie powyzej. W 
ifie dolozylem wyszukiwanie slowa mobile zeby odsiac niepotrzebna fraze.
Najwazniejsze ze dziala.
Technical Details
Message-ID: <hejda0$9dl$1@atlantis.news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.nask.pl!news.nask.org.pl!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail
References: <hehqdb$dcl$1@nemesis.news.neostrada.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.nask.pl!news.nask.org.pl!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail
From: Kap <kptt@wp.pl>
Newsgroups: pl.comp.lang.perl
Subject: Re: Wyrazenie regularne - jak poprawic... [Dlugie]
Date: Wed, 25 Nov 2009 14:57:51 +0100
Organization: TP - http://www.tp.pl/
Lines: 81
Message-ID: <hejda0$9dl$1@atlantis.news.neostrada.pl>
References: <hehqdb$dcl$1@nemesis.news.neostrada.pl>
NNTP-Posting-Host: emj50.internetdsl.tpnet.pl
Mime-Version: 1.0
X-Trace: atlantis.news.neostrada.pl 1259157633 9653 83.15.169.50 (25 Nov 2009 14:00:33 GMT)
X-Complaints-To: usenet@news.neostrada.pl
NNTP-Posting-Date: Wed, 25 Nov 2009 14:00:33 +0000 (UTC)
User-Agent: Thunderbird 2.0.0.23 (Windows/20090812)
In-Reply-To: <hehqdb$dcl$1@nemesis.news.neostrada.pl>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit