🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Wyrazenia regularne, split

#886
From: Robert Richard George 'reptile' ...
Date: Thu, 15 Jan 1998 16:33
57 lines
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-mail
References: <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