Regexin selittäjä
Local only — nothing is uploaded unless you save or share it.
Regexin selittäjä: liitä lauseke ja lue mitä sen jokainen osa tekee, suomeksi.
- Liitä säännöllinen lausekkeesi, kauttaviivojen kanssa tai ilman
- Lue erittely ylhäältä alas
- Seuraa sisennystä nähdäksesi mitä kukin kvanttori koskee
Liput
Tallenna tämä työkalu
Pidä Regexin selittäjä käden ulottuvilla
Käytä selaimen Jaa-valikkoa ja valitse sitten ”Lisää aloitusnäyttöön”.
Tietoa työkalusta
Regexin selittäjä purkaa säännöllisen lausekkeen osiin ja kuvaa jokaisen palan tavallisin sanoin. Liitä lauseke — ympäröivien kauttaviivojen ja lippujen kanssa tai ilman — niin saat jäsennyksen: mitä kukin merkintä osuu, kuinka monta kertaa se voi toistua ja mitkä osat kaapataan. Se mikä tekee regexistä lukukelvottoman ovat harvoin yksittäiset palat. Useimmat tietävät mikä \d on. Aidosti vaikeaa on nähdä mikä koskee mitäkin: toistaako plusmerkki yhden merkin vai kokonaisen ryhmän, mistä vaihtoehtoisuus alkaa ja mihin se päättyy, ja mihin eteenpäinkatsaus oikeasti katsoo. Siksi selitys on sisäkkäinen, ja sisäkkäisyys on koko pointti — sisennys vastaa tuohon kysymykseen ennen kuin yksikään sana ehtii. Se lukee lausekkeen sen sijaan että ajaisi sen. Se tarkoittaa kahta hyödyllistä asiaa. Lauseke jonka ajaminen vihamielistä syötettä vasten veisi minuutteja selitetään hetkessä, koska sen lukeminen on murto-osa työstä. Ja lauseke joka ei käänny selitetään silti: jos olet liittänyt jotain koska se on rikki, ”SyntaxError” palauttaa sinut lähtöruutuun, joten ongelmat raportoidaan erittelyn rinnalla eikä sen sijasta. Mitään ei lähetetä minnekään. Lausekkeet kantavat usein vihjeitä siitä datasta jota varten ne kirjoitettiin, ja ne pysyvät selaimessasi.
Usein kysyttyä
Mitä tämä regex tarkoittaa?
Liitä se sisään ja lue jäsennys. Jokainen rivi nimeää yhden palan lausekkeesta ja kertoo mitä se osuu; sisennetyt rivit ovat yläpuolellaan olevan ryhmän sisällä. Jos kvanttori kuten + tai {2,4} koskee palaa, se sanotaan samalla rivillä, ja juuri sen ihmiset lukevat useimmin väärin.
Osaako se selittää jonkun toisen kirjoittaman säännöllisen lausekkeen?
Juuri sitä varten se on. Liitä lauseke, niin saat erittelyn pala palalta — tämä ryhmä, tämä kvanttori, tämä merkkiluokka — yhden tiivistelmälauseen sijaan. Regexin kääntäminen selkokielelle on hyödyllistä vain tuolla tarkkuudella, koska se osa jonka luit väärin on yleensä yksi merkintä, ja koko lausekkeen mukailu piilottaa juuri sen merkinnän jonka sait väärin.
Voinko liittää lausekkeen kauttaviivoineen ja lippuineen?
Voit. Sekä /\d+/gi että \d+ ymmärretään. Jos lippuja on, ne luetellaan sen kera mitä kukin tekee, koska g, i, m ja s muuttavat lausekkeen käyttäytymistä enemmän kuin useimmat sen merkeistä.
Selittääkö se regexin joka ei toimi?
Selittää, ja se on tarkoituksellista. Sulkematon hakasulje, harhaanjoutunut kvanttori tai mahdoton lukumäärä kuten {5,2} raportoidaan ongelmana, ja loput lausekkeesta selitetään silti. Pelkän virheilmoituksen käteen saaminen ei auta kun tulit juuri siksi että lauseke on rikki.
Onko tämä sama kuin regexin testaaminen?
Ei. Tämä lukee lausekkeen ja kertoo mitä siinä sanotaan; testeri ajaa sen tekstiä vasten ja näyttää mitä se osui. Ne vastaavat eri kysymyksiin ja ovat usein hyödyllisiä yhdessä — regex-testerimme on klikkauksen päässä.
Miksei ab+ toista koko juttua?
Koska kvanttori koskee yksittäistä välittömästi edeltävää osaa, joten ab+ on a jota seuraa yksi tai useampi b. Molempien toistamiseen tarvitaan ryhmä: (ab)+. Tämä on regexin ylivoimaisesti yleisin väärinluenta, minkä vuoksi jäsennys näyttää kvanttorin aina kiinni täsmälleen siinä palassa jota se hallitsee.
Mikä ero on kaappaavalla ryhmällä ja merkinnällä (?:...)?
Kaappaava ryhmä säilyttää osumansa jotta voit viitata siihen jälkeenpäin, numerolla tai nimellä. (?:...) ryhmittelee merkit yhteen rakenteen vuoksi — jotta kvanttori tai vaihtoehtoisuus voi koskea niitä kaikkia — säilyttämättä tulosta. Kaappaamattoman ryhmän käyttäminen siellä missä et tarvitse arvoa pitää muiden numeroinnin siistinä.
Auta parantamaan tätä työkalua
Löysitkö virheen, kaipaatko muutosta vai puuttuuko jokin työkalu?
Sinulla on lähettämätön viesti.
Kiitos — viesti tuli perille. Vastaus löytyy postilaatikostasi.Go to my messages