Kommentteja perlre suomennukseen.

Jukka Tapani Juslin jtj at niksula.hut.fi
Sun May 2 13:46:47 CDT 1999


Heip!

Sain jonkinlaisen aloitelman tuosta käännöksestä tehtyä. Siinä ei ole
perlre edes vielä ihan kokonaan, mutta jos tuohon saisi jotain kommentteja
niin voisi tuota hommaa jatkaa.

Olisihan se hienoa, jos vähän saataisiin noita käännettyä. Onko kukaan muu
tehnyt mitään?

t.Jukka
jtj at leija.cs.hut.fi

---
Personal page (picture of me and contact info) http://www.hut.fi/~jtjuslin
-------------- next part --------------
PERLRE(1)	Perl ohjelmoijan viiteteos		PERLRE(1)


NIMI
	perlre - Perlin säännölliset lausekkeet

KUVAUS
	Tämä sivu kuvaa perlin säännöllisten lausekkeiden syntaksin. Jos
	haluat tietää kuinka säännöllisiä lausekkeita käytetään sovittamis
	operaatiossa, sekä esimerkkejä samasta, katso m// ja s/// perlop
	manuaalisivuilta.

	Sovitus operaatiolla voi olla useanlaisia muuntimia. Muuntimet,
	jotka liittyvät säännöllisten lausekkeiden tulkkaamiseen on listattu
	alla. Muuntimet, jotka muuntavat operaation luonnetta, katso
	m// osio perlop man-sivuilta ja s// samasta paikasta.

	i	Tee sovitus kirjaisimen koosta välittämättä

		Jos use locale on voimassa, kirjasinkartta otetaan
		silloisesta ympäristöstä. Katso perllocale man-sivut.

	m	Käsittele merkkijonoa useina riveinä. Se on, muuta "^"
		ja "$" osumasta merkkijonon loppuun tai alkuun osumaan
		tämän sijasta alkamaan sovittamisen minkä tahansa
		merkkijonon alusta tai lopusta.

	s	Käsittele merkkijonoa yhtenä rivinä. Se on, muuta "."
		osumaan mihin tahansa merkkiin ikinä, jopa rivinvaihto-
		merkkiin, johon se ei yleensä osuisi.

	x	Väljennä jonosi sovitusehtoja hyväksymällä välilyönnit
		ja kommentit.

	Nämä kirjoitetaan yleensä "/x muunnin", vaikka erotin ei aina
	ole kauttaviiva. Itse asiassa, mikä tahansa näistä muuntimista
	voi olla sulautettuna säännälliseen lausekkeeseen itseensä
	käyttäen uutta (?...) rakennetta. Katso alla. 

	/x muunnin itse tarvitsee hieman lisää selitystä. Se kertoo
	säännöölisten lausekkeiden sovitus-koneelle olla ottamatta
	huomioon välilyöntejä, jotka eivät ole kenoviivojen välissä
	eivätkä merkkijonon sisällä. Voit käyttää tätä säännöllisten
	lausekkeitesi rikkomiseen (hieman) luettavampaan muotoon. 
	# merkkiä käsitellään myös meta-merkkinä aloittamassa kommentin,
	kuten normaalissa Perl koodissa. Tämä tarkoittaa myös, että jos
	etsit merkkijonosta välilyöntiä tai #-merkkiä, sinun täytyy
	joko tehdä 'escape' merkki niiden eteen tai koodata escape
	käyttäen oktaali- tai heksajärjestelmää. Yhteenvetona voidaan
	sanoa, että nämä ominaisuudet tekevät Perlin säännöllisistä 
	lausekkeista huomattavasti luettavampia. Katso C:n kommentin
	poistokoodi perlop man-sivuilta.


18/Apr/99		perl 5.004_02				1



PERLRE(1)	Perl ohjelmoijan viiteteos		PERLRE(1)

	Säännölliset lausekkeet

	Merkkijonot, joita käytetään merkintunnistukseen ovat säännöllisiä
	lausekkeita kuten ne, jotka toimitettiin säännölliste lausekkeiden
	versiossa 8. (Itseasiassa, rutiinit on johdettu (kaukaisesti)
	Hanry Steinerin vapaasti jaettavasta uudelleen toteutetusta
	V8 rutiini joukosta.) Katso osio Version 8 Regular Expressions
	yksityiskohtia varten.

	Erityisesti seuraaville meta-merkeillä on vakioidut egrep
	tarkoituksensa:

		\  Kommentoin seuraava metamerkki
		^  Sovita rivin alusta lähtien
		.  Hyväksy mikä tahansa merkki (lukuunottamatta
	 	   rivinvaihto)
		$  Sovita rivin lopusta alkaen (tai ennen rivinvaihtoa
		   lopussa)
		|  Muuntomerkki
		() Ryhmittely
		[] Merkkiluokka

	Vakiona "^" merkki on taatusti yrittää sovittaa vain merkkijonon
	alussa, "$" merkki lopussa (tai ennen rivinvaihtoa lopussa) ja
	Perl tekee tiettyjä optimointeja oletuksella, että merkkijono
	käsittää vain yhden rivin. Sulautettuja rivinvaihtoja ei soviteta
	"^" tai "$" avulla. Voit kuitenkin toivoa käsitteleväsi
	merkkijonoja monirivisenä puskurina niin että "^" sovittaa minkä-
	tahansa rivinvaihdon jälkeen, ja "$" rivinvaihtoa ennen. Pienen
	ylimääräisen työn avulla voit tehdä tämän käyttääen /m muunninta
	sovittamis-operaatiossa. (Vanhemmat ohjelmat  tekivät tämän
	asettamalla $*, mutta tämä käytäntö on muuttunut (vanhat
	ohjelmat menevät kuitenkin tulkista läpi).

	Hyödyntääksesi monirivisiä korvaus-operaatiota, "." merkki ei
	ikinä sovita rivinvaihtoa ellet käytä /s muunninta, joka käskee
	Perlin tulkita merkkijono yksirivisenä vaikka se ei olisikaan. 
	/s muunnin on voimakkaampi kuin $* tapauksessa että sinulla
	on (huonosti käyttäytyvää) vanhaa koodia, joka määrittää sen toi-
	sesta moduulista käsin.

	Seuraavat standardoidut kvantifioijat ovat tunnettuja:

	*	Osu 0 tai useamman kerran
	+	Osu 1 tai useamman kerran
	?	Osu 1 tai 0 kertaa
	{n}	Osu tarkalleen n kertaa
	{n,}	Osu vähintään n kertaa
	{n,m}	Osu vähintään n mutta ei enempää kuin m kertaa

	(Jos aaltosulkua käytetään muussa yhteydessä, sitä käsitellään
	tavallisena merkkinä.) "*" muunnin on vastaava kuin {0,}, "+"
	muunnin kuin {1,}, ja "?" muunnin kuin {0,1}. n ja m ovat
	rajoitetut vakioarvoihin, jotka ovat pienempiä kuin 65536.

19/Apr/99		perl 5.004_02				2




PERLRE(1)	Perl ohjelmoijan viiteteos		PERLRE(1)


	Oletuksena, kvantifioija alijono on "ahne", se on, se sovittaa
	niin monta kertaa kuin mahdollista (annetusta aloituskohdasta)
	samalla sallien loppujen käskyjen myös sovittaa. Jos haluat 
	sovittaa mandollisimman vähäisen määrän, lisää kvantifioian
	perään "?". Huomaa että merkitys ei muutu, vain "ahneus":

        *?       Osu 0 tai useamman kerran
        +?       Osu 1 tai useamman kerran
        ??       Osu 1 tai 0 kertaa
        {n}?     Osu tarkalleen n kertaa
        {n,}?    Osu vähintään n kertaa
        {n,m}?   Osu vähintään n mutta ei enempää kuin m kertaa

	Koska merkkijonoa sovitaan kuin lainausmerkeissä olevia merkkejä,
	seuraava toimii myös:

	   \t          tabulaatori           (HT, TAB)
           \n          rivinvaihto           (LF, NL)
           \r          return                (CR)
           \f          form feed             (FF)
           \a          piippaus              (BEL)
           \e          escape (vrt. troff)   (ESC)
           \033        oktaali-merkki (vrt. PDP-11)       
	   \x1B        heksa-merkki
           \c[         kontrolli-merkki
           \l          alenna kirjasin (vrt. vi)
           \u          ylennä kirjasin (vrt. vi)
           \L          alennas kunnes \E (vrt. vi)
           \U          ylennä kunnes \E (vrt. vi)
           \E          loppu kirjasimen muunnin (vrt. vi)
           \Q          kommentoi säännöllisten lausekkeiden meta-merkit
		       kunner \E

	Jos use locale on käytössä, merkkikartta jota \I, \L, \u ja
	<\U> käyttävät on otettu kulloisestakin ympäristöstä. Katso
	perllocale mansivut.

	Lisäksi, Perl määrittää seuraavat:

	\w   Sovita "sana" merkit (numerot ja "_")
	\W   Sovita ei-sana merkit
	\s   Sovita välilyöntimerkit
	\S   Sovita  ei-välilyöntimerkit
	\d   Sovita numeromerkit
	\D   Sovita ei-numeromerkit.

	Huomaa että \w sovittaa yksittäiset kirjainnumeeriset merkit, ei
	koko sanaa. Sovittaaksesi sanan sinun täyty sanoa \w+. Jos
	use locale on käytössä, lista aakkosista jotaka \w on generoinut
	on käytössä silloisesta ympäristöstä.


KÄÄNTÄJÄ
	Jukka Juslin <jtjuslin at cc.hut.fi>


More information about the Helsinki-pm mailing list