|
|
Rivi 216: |
Rivi 216: |
|
| |
|
| == Säännölliset lausekkeet == | | == Säännölliset lausekkeet == |
| Haettaessa tiedostosta tiettyjä rivejä ei tarvitse tyytyä pelkkään hakuun hakusanoilla, vaan voidaan myös käyttää säännöllisiä lausekkeita. Tämä tarkoittaa sitä, että hakusanaksi voidaan laittaa lauseke, josta löytyy seuraavia erikoismerkkejä:
| | Haussa voi käyttää [[regex|säännöllisiä lausekkeita]]. |
| . ^ $ [ * \
| |
| Piste tarkoittaa, että sen paikalle käy mikä tahansa merkki. Esimerkiksi kaikki merkkijonot, joissa on merkkijonojen "10" ja "11" välissä yksi merkki (esim. "10+11" ja "10Ö11", mutta ei "10++11"), toteuttavat haun
| |
| /10.11/
| |
| Pisteitä voi olla myös peräkkäin useita, esim. "l...x"-ehtoon täsmäisi merkkijono "linux" tai myös "www.linux.fi" (merkkijonon jälkeen tai ennen sitä voi olla mitä vaan).
| |
| | |
| ^ tarkoittaa rivin alkua ja $ rivin loppua. Esimerkiksi ehtoon
| |
| /^linux
| |
| täsmäisivät rivit "linux.fi" ja "linux on käyttöjärjestelmä", mutta ei esimerkiksi "debian gnu/linux". Esimerkiksi jokaisen rivin alkuun voitaisiin lisätä sana "linux" komennolla
| |
| 1,$ s/^/linux/
| |
| | |
| Samassa lausekkeessa voidaan käyttää sekä ^ että $ -merkkejä, esimerkiksi seuraavaan ehtoon täsmäisivät vain sellaiset rivit, joilla on 4 merkkiä:
| |
| /^....$/
| |
| | |
| Hakasulkujen sisällä voidaan luetella tähän kohtaan sopivat merkit, esimerkiksi ehtoon
| |
| /[23] autoa/
| |
| täsmäisivät merkkjonot "2 autoa" ja "3 autoa". Lisäksi voidaan käyttää viivaa merkkaamaan suurempaa aluetta, esimerkiksi kaikki numerot voidaan merkitä joko luettelemalla ne ([0123456789]) tai lyhyemmin [0-9].
| |
| | |
| Tähti tarkoittaa, että sitä edeltävä merkki (tai joku merkeistä jos käytetään hakasulkeita) voi esiintyä ennalta tuntemattoman määrän peräkkäin.
| |
| | |
| Jos halutaan etsiä merkkijonoa, johon kuuluu jokin säännöllisissä lausekkeissa käytettävä erikoismerkki, on tämä merkki kirjoitettava eri tavalla hakuehtoon: sen eteen lisätään \-merkki. Esimerkiksi pistettä voidaan hakea komennolla
| |
| /\./
| |
| tai kauttaviivaa komennolla
| |
| /\//
| |
|
| |
|
| == Ulkoiset komennot == | | == Ulkoiset komennot == |