Reguliariosios išraiškos yra galingas įrankis teksto analizei ir apdorojimui. Jos leidžia rasti, tikrinti, keisti ar net padalyti tam tikras šablonus tekste. Šis vadovas supažindins tave su pagrindais, kaip naudoti reguliariąsias išraiškas Python naudojant re.match ir re.search modulius.
Pagrindinės įžvalgos
- Reguliariosios išraiškos padeda ieškoti tam tikrų simbolių sekų tekstuose.
- re.match tikrina, ar šablonas egzistuoja teksto pradžioje.
- re.search randa šabloną bet kurioje teksto vietoje.
- Python re biblioteka yra būtina dirbti su reguliajomis išraiškomis.
Paskalos pagalba
Norint suprasti, kaip veikia reguliariosios išraiškos, čia pateikiami žingsniai, kaip tai įgyvendinti Python.
Visų pirma, sukurkite naują failą Python 3. Ten nustatykite kelis terminus, kuriuos vėliau norėsite ieškoti tekste. Pavyzdžiui, naudosime terminus „Terminas 1“ ir „Terminas 2“:

Tada rašykite tekstą. Šiame tekste turėtų būti terminai, kuriuos norite rasti. Pavyzdžiui: "Tai yra eilutė su terminu 1 arba back 1, bet neturi kito kelio."

Dabar sukursite ciklą, kuris pereis per jūsų nurodytus terminus. Šiame cikle naudokite print funkciją, kad parodytumėte paieškos rezultatą. Print funkcija naudojama tam, kad išvestumėte dabartinį paieškos terminą konsolėje.

Kad paieškos rezultatai būtų lengviau skaitomi, galite formatuoti eilutę. Naudojant šablonus galite dinamiškai parodyti dabartinį terminą ir tekstą.

Tada įgyvendinate logiką, kad patikrintumėte, ar kiekvienas terminas yra tekste. Čia naudojame re.search, kuris yra naudingas būdas ieškoti šablono tekste.

Jei re.search randa atitikimą, turite nurodyti, kad terminas egzistuoja, o jei ne, išvestis informuos, kad jo nėra. Išvestis bus lengvai suprantama, kad būtų aišku, koks yra rezultatas.
Rezultatas parodys, kurie terminai yra randami tekste ir kurie – ne. Jei pridėsite papildomų terminų, ciklas bus vykdomas kiekvienam iš šių terminų.

Norėdami sužinoti, kurioje pozicijoje terminas randasi tekste, galite naudoti match.start() ir match.end() funkcijas. Jos pateikia pradinę ir galutinę poziciją jūsų paieškos rezultatui.

Naudodami match.start() galite gauti tikslią vietą, kur terminas prasideda tekste. Naudodami match.end() gausite rasto termino pabaigos vietą.

Taip galite ne tik identifikuoti rastus terminus tekste, bet ir sužinoti jų tikslias pozicijas, tai gali būti naudinga tiksliam apdorojimui.

Kitame žingsnyje bus įdomu, nes šis vadovas parodys, kaip naudojant reguliariąsias išraiškas ne tik ieškoti šablonų, bet ir izoliuoti ar pakeisti specifines teksto dalis. Tai atveria daugybę galimybių tekstinėms manipuliacijoms.
Santrauka – Įvadas į Reguliarias Išraiškas su Python: re.match ir re.search
Reguliariosios išraiškos yra būtinas įrankis programavime, kai reikia analizuoti ir modifikuoti teksto duomenis. Šiame vadove išmokote, kaip Python taikyti re.match ir re.search modulius, kad rastumėte terminus tekste. Taip pat sužinojote, kaip nustatyti ieškomų terminų pozicijas.
Dažniausiai užduodami klausimai
Kaip importuoti re modulį Python?Importuokite modulis su "import re".
Koks skirtumas tarp re.match ir re.search?re.match ieško tik eilutės pradžioje, o re.search ieško visur eilutėje.
Kaip rasti termino poziciją tekste?Naudokite match.start() ir match.end() metodus.
Ar galiu naudoti reguliariąsias išraiškas tekstui pakeisti?Taip, tam galite naudoti re.sub() funkciją.
Kur galiu sužinoti daugiau apie reguliariąsias išraiškas?Pasižiūrėkite į oficialią Python dokumentaciją arba internetinius išteklius apie reguliariąsias išraiškas.