Article View: pl.comp.lang.perl
Article #886Re: Wyrazenia regularne, split
From: Robert Richard George 'reptile' ...
Date: Thu, 15 Jan 1998 16:33
Date: Thu, 15 Jan 1998 16:33
57 lines
3387 bytes
3387 bytes
On 98.01.15 Sebastian Lukasiewicz pressed the following keys:
> Czesc
>
> Mam kilka pytanek zwiazanyk z wyrazeniami regularnymi oraz funkcja split
>
> 1. Mam ciag : "aaa bbb ccc ddd eee"
>
> a) jak przypisac na 1 zmienna slowo "aaa" a reszte ciagu na 2 zmienna,
> za pomoca funkcji split
splitem nie umiem, ale za to mozna tak:
$zmienna =~ /^(\S+)\s+(.*)$/; # caly lancuch w $zmienna
$poczatek = $1; # pierwsze slowo
$koniec = $2; # reszta lancucha
> b) jak przypisac na 1 zmienna slowa "aaa" i "bbb" a na druga zmienna
> slowo "eee", za pomoca funkcji split
$zmienna = /^(\S+\s+\S+).*?(\S+)$/ # caly lancuch w $zmienna
$poczatek = $1; # pierwsze dwa slowa
$koniec = $2; # ostatnie slowo
> c) jak "wyciagnac" ze stringa i przypisac na jakas zmienna 2 lub 3
> wyraz za pomoca wyrazenia regularnego. Chodzi mi tu oto aby uzy-
> skac efekt uzycia funkcji zawracajacej n'ty wyraz z ciagu. Np.
> w jezyku REXX jest funkcja word "word(string, n)".
@tablica = split(/\s+/,"aaa bbb ccc ddd eee"); # podziel w miejscach, gdzie
# sa ,,biale znaki''
print "$tablica[3]\n"; # masz tablice, ktora mozesz
# sobie indeksowac do bolu.
> 2. Mam ciag "Ala ma kota. Tata\n ma gazete"
>
> Jak za pomoca wyrazenia reguralnego lub funkcji split otrzymac
> string w ktorym bedzie wszystko od slowa "ma" do znaku konca linii
> ("\n").
"Ala ma kota. Tata\n ma gazete" =~ /(ma .*?\n)/;
print "$1\n";
Po znaczenia poszczegolnych znaczkow specjalnych w perlu odsylam do
_man perlre_
> Z gory dziekuje za jakakolwiek pomoc.
Nie ma za co, mam nadzieje, ze to cos wyjasni :)
Gad
--
mailto:reptile@pdi.net :)
Women are more complicated than PC... :(
Look into my headers and you'll see who I am. :)
Technical Details
Message-ID:
<19980115173332.48941@address.in.sig>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!lublin.pl!gad!not-for-mailReferences:
<Pine.LNX.3.96.980115174559.5983A-100000@mac150.ci.uw.edu.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!lublin.pl!gad!not-for-mail From: Robert Richard George 'reptile' Wal <reptile@address.in.sig> Newsgroups: pl.comp.lang.perl Subject: Re: Wyrazenia regularne, split Date: Thu, 15 Jan 1998 17:33:32 +0100 Organization: Me? Organized? Get real :) Lines: 57 Message-ID: <19980115173332.48941@address.in.sig> References: <Pine.LNX.3.96.980115174559.5983A-100000@mac150.ci.uw.edu.pl> NNTP-Posting-Host: cyber.cs.net.pl Mime-Version: 1.0 X-Mailer: Mutt 0.88 In-Reply-To: <Pine.LNX.3.96.980115174559.5983A-100000@mac150.ci.uw.edu.pl>; from Sebastian Lukasiewicz on Thu, Jan 15, 1998 at 06:09:51PM +0100 X-URL: http://www.pdi.net/~gad (Eternally under construction) X-IRC-Nick: Gadzinka@iRCnET.iRC.nETWORK (Gadzinka -- tiny little reptile) X-Phone: +48(0)42 593453 X-PGP-Fingerprint: 37E1D55F 29793C0C B8D39D01 61FC50CE X-PGP-Key: finger reptile@gryzmak.lodz.pdi.net X-Motto: Fact that you're paranoid doesn't imply that THEY don't follow you. X-Disclaimer: I don't answer mail or news articles below some arbitrary mark. X-Favourites: women, cats, Amiga, Linux, TeX, vim, music, sci-fi, poetry. X-Mount-Entry: mount -t human /dev/reptile /earth/europe/poland/lodz Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit