Regular Expressions Basics
Regulyar ifodalar asoslari
Regex (regular expression, regulyar ifoda) — matn ichidan "naqsh" (pattern) qidirish uchun maxsus mini-til. regexp paketi shu tilni Go'da ishlatish imkonini beradi.
package main
import (
"fmt"
"regexp"
)
func main() {
re := regexp.MustCompile(`\d+`)
fmt.Println(re.MatchString("Buyurtma #482 tayyor"))
fmt.Println(re.FindString("Buyurtma #482 tayyor"))
fmt.Println(re.FindAllString("A1 B22 C333", -1))
}\d+ — "bir yoki undan ko'p raqam ketma-ketligi" degan naqsh. MustCompile bu naqshni tayyorlaydi (xato bo'lsa dastur darhol qulaydi, shuning uchun ismida "Must" bor). MatchString — mos keladimi (true/false). FindString — birinchi topilganini qaytaradi. FindAllString(matn, -1) — hammasini topib ro'yxat qilib beradi (-1 — "hech qanday cheklovsiz, hammasini top" degani).
>_ Exercise
Faqat kichik lotin harflaridan iborat so'zlarni aniqlaydigan regex yozing.
- •faqat kichik lotin harflaridan iboratligini tekshiradigan regex yarating: ^[a-z]+$
- •har bir so'z uchun mos keladimi (true/false) chop eting
Stuck? Reveal a hint to help you.
Key Takeaway
Key Takeaway:
Regex — matn ichidan naqsh qidirish uchun kuchli vosita. ^ va $ matn chegaralarini, \d/[a-z] esa belgi turlarini bildiradi.
NEXT UP
Regex Find and Replace
$ go run main.go
Kodingizni ishga tushiring