🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Wyrazenie regularne - jak poprawic... [Dlugie]

#51678
From: Kap
Date: Tue, 24 Nov 2009 23:20
73 lines
3271 bytes
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
Technical Details
Message-ID: <hehqdb$dcl$1@nemesis.news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!opal.futuro.pl!news.internetia.pl!newsfeed.neostrada.pl!nemesis.news.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!opal.futuro.pl!news.internetia.pl!newsfeed.neostrada.pl!nemesis.news.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail
From: Kap <kptt@wp.pl>
Newsgroups: pl.comp.lang.perl
Subject: Wyrazenie regularne - jak poprawic... [Dlugie]
Date: Wed, 25 Nov 2009 00:20:54 +0100
Organization: TP - http://www.tp.pl/
Lines: 73
Message-ID: <hehqdb$dcl$1@nemesis.news.neostrada.pl>
NNTP-Posting-Host: emj50.internetdsl.tpnet.pl
Mime-Version: 1.0
X-Trace: nemesis.news.neostrada.pl 1259105515 13717 83.15.169.50 (24 Nov 2009 23:31:55 GMT)
X-Complaints-To: usenet@news.neostrada.pl
NNTP-Posting-Date: Tue, 24 Nov 2009 23:31:55 +0000 (UTC)
User-Agent: Thunderbird 2.0.0.23 (Windows/20090812)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit