Ero sivun ”Säännöllinen lauseke” versioiden välillä
Siirry navigaatioon
Siirry hakuun
oma teksti selkeämmin, oikeammin
LP (keskustelu | muokkaukset) (johdanto pidennetty: eri syntaksit, vrt glob; {m,n} uudempi laajennos) |
LP (keskustelu | muokkaukset) (oma teksti selkeämmin, oikeammin) |
||
Rivi 1: | Rivi 1: | ||
'''Säännöllinen lauseke''' (engl. '''regular expression''', '''regexp''') on yksinkertainen merkkijonokieli, joka voi joko ''vastata'' tai ''olla vastaamatta'' jotain toista merkkijonoa. Linux- ja Unix-järjestelmissä säännöllisiä lauskkeista on suurta hyötyä [[komentorivi]]ä käytettäessä merkkijonojen etsi/korvaa-toiminnoissa. Niiden voidaankin sanoa olevan [[putki]]ttamiseen yhdistettynä tärkeimpiä työkaluja, joita komentorivin edistynyt käyttö edellyttää. | '''Säännöllinen lauseke''' (engl. '''regular expression''', '''regexp''') on yksinkertainen merkkijonokieli, joka voi joko ''vastata'' tai ''olla vastaamatta'' jotain toista merkkijonoa. Linux- ja Unix-järjestelmissä säännöllisiä lauskkeista on suurta hyötyä [[komentorivi]]ä käytettäessä merkkijonojen etsi/korvaa-toiminnoissa. Niiden voidaankin sanoa olevan [[putki]]ttamiseen yhdistettynä tärkeimpiä työkaluja, joita komentorivin edistynyt käyttö edellyttää. | ||
Tämän säännöllisten lausekkeiden esityksen perusteella lausekkeet ymmärtää, mutta kaikissa yhteyksissä syntaksi ei ole sama. Kolme syntaksityyppiä on yleisesti käytössä: | Tämän säännöllisten lausekkeiden esityksen perusteella lausekkeet ymmärtää, mutta kaikissa yhteyksissä syntaksi ei ole sama. Kolme syntaksityyppiä on yleisesti käytössä: tavallinen ("basic"), laajennettu ("extended") ja [[perl]]-tyyppinen. Ensinmainitussa useammat merkit vastaavat itseään ja esimerkiksi "+" erikoismerkityksessään esitetään "\+". Alla esitetään uudempi laajennettu syntaksi. Varsinkin usealla koneella käytettäviä skriptejä kirjoitettaessa pitää olla huolellinen siinä, mitä lajennoksia käyttää. | ||
Säännöllisiä lausekkeita ei pidä sekoittaa tiedostonimi-jokereihin ("glob"), joilla on osittain sama toiminnallisuus (vrt muoto "*" ja ".*"). | Säännöllisiä lausekkeita ei pidä sekoittaa tiedostonimi-jokereihin ("glob"), joilla on osittain sama toiminnallisuus (vrt muoto "*" ja ".*"). |