🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.php
Article #220208

Re: Jakiej funkcji używacie do sprawdzenia zawierania się jednego ze słów tablicy w stringu

#220208
From: porneL
Date: Mon, 17 Aug 2009 23:45
40 lines
2091 bytes
On Mon, 17 Aug 2009 23:07:18 +0100, Sexbox <sex.box@wp.pl.nieprawdziwy.pl>  
wrote:

>> Da się  też zbudować wyrażenie regularne sprawdzające ogromną ilość słów
>> prawie minimalnym nakładem pracy (za pomocą grup i alternatyw
>> wyciągniętych ze struktury zwanej trie).
>
> Chętnie zobaczyłbym jakiś przykład - lub jakieś naprowadzenie.

dupa
dupy
dudek

du-dek
   \p-a
     \y

(?>du(?>dek|p[ay]))


"?>" wyłącza cofanie się, co jest niezbędne, żeby nie strzelić sobie w  
stopę dużymi wyrażeniami.

>> Poza tym strtr(,array) jest wielokrotnie szybsze od str_replace().
>
> Nie pisz andronów, jeśli nie wiesz. ;)
> Być może dla dużych struktur danych jest to prawdziwe,
> ale dla niedużych, nawet taka konstrukcja:
>     str_replace (array_keys ($aslownik), $aslownik, $string);
> jest trochę szybsza od:
>     strtr ($string, $aslownik);
>
> Sam się zdziwiłem ale, to akurat sprawdzone doświadczalnie.

Zakładam, że lista przekleństw będzie długa i wtedy zamiana 1-krotna  
będzie na pewno szybsza od n-krotnej :)

-- 
http://pornel.net
this.author = new Geek("porneL");
Technical Details
Message-ID: <op.uytyx6hdutk0y1@aimac.local>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
References: <h6c2gq$26m$1@atlantis.news.neostrada.pl> <op.uytjxpx2utk0y1@aimac.local> <h6ckf5$cei$1@atlantis.news.neostrada.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: porneL <niusy4@pornel.net>
Newsgroups: pl.comp.lang.php
Subject: Re: Jakiej funkcji używacie do sprawdzenia
 zawierania się jednego ze słów
 tablicy w stringu
Date: Tue, 18 Aug 2009 00:45:32 +0100
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 40
Message-ID: <op.uytyx6hdutk0y1@aimac.local>
References: <h6c2gq$26m$1@atlantis.news.neostrada.pl> <op.uytjxpx2utk0y1@aimac.local> <h6ckf5$cei$1@atlantis.news.neostrada.pl>
NNTP-Posting-Host: 82.132.139.146
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1250552741 7873 82.132.139.146 (17 Aug 2009 23:45:41 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Mon, 17 Aug 2009 23:45:41 +0000 (UTC)
X-User: pornelspam
User-Agent: Opera Mail/10.00 (MacIntel)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit