GoDasturchi
Slug Generator 4: Ship It

Slug Generator 4: Ship It

Slug generatori 4: Ishga tushirish

Oxirgi qadam. Sizda har biri bitta ishni qiladigan ikkita funksiya bor, va faqat bitta bo'lak yetishmayapti: kichik harfga aylantirish.

Bytes, Runes & Sized Types darsida toUpper ni qo'lda yozgan edingiz. Kichik harfdan 32 ni ayirish, tamom. Kichik harfga aylantirish xuddi shu g'oyaning teskarisi. Buni o'zingiz ham yozishingiz mumkin edi.

Lekin buning hojati yo'q. Go'ning standart kutubxonasi strings paketi bilan birga keladi, va u allaqachon bu funksiyaga ega:

example.go
strings.ToLower("Go IS Fun") // "go is fun"

Sizning versiyangiz faqat ASCII bilan ishlaydi. strings.ToLower esa butun Unicode bilan ishlaydi va bitta chaqiruv, xolos. Standart kutubxonada sizga kerakli narsa allaqachon bo'lsa, o'shandan foydalaning.

Sizning toSlug funksiyangiz — bu kompozitsiya: cleanText keraksizni tozalaydi, spacesToHyphens bo'shliqlarni hal qiladi, strings.ToLower esa yakunlaydi.

>_ Exercise

Istalgan sarlavhani toza URL slugiga aylantiradigan toSlug(title string) string funksiyasini yozing.

Quyidagi uchta tayyor yordamchi funksiyadan pipeline (quvur liniyasi) yasash uchun foydalaning:

  • 1. cleanText — noto'g'ri belgilarni tozalaydi
  • 2. spacesToHyphens — bo'shliqlarni tirega almashtiradi
  • 3. strings.ToLower — hammasini kichik harfga aylantiradi

Misollar:

  • toSlug("My First Blog Post!")"my-first-blog-post"
  • toSlug("Go 1.21: What's New?")"go-121-whats-new"
  • toSlug(" Hello World ")"hello-world"
  • toSlug("UPPERCASE THINGS")"uppercase-things"

Stuck? Reveal a hint to help you.

Hints (0/3)

Key Takeaway

Key Takeaway:

Bitta ishni yaxshi bajaradigan kichik, aniq maqsadli funksiyalar — Go dasturlarining qurilish bloklaridir. Ularni pipeline'ga birlashtiring.

Finish
OUTPUT

$ go run main.go
Kodingizni ishga tushiring

Slug Generator 4: Ship It

Slug generatori 4: Ishga tushirish

Oxirgi qadam. Sizda har biri bitta ishni qiladigan ikkita funksiya bor, va faqat bitta bo'lak yetishmayapti: kichik harfga aylantirish.

Bytes, Runes & Sized Types darsida toUpper ni qo'lda yozgan edingiz. Kichik harfdan 32 ni ayirish, tamom. Kichik harfga aylantirish xuddi shu g'oyaning teskarisi. Buni o'zingiz ham yozishingiz mumkin edi.

Lekin buning hojati yo'q. Go'ning standart kutubxonasi strings paketi bilan birga keladi, va u allaqachon bu funksiyaga ega:

example.go
strings.ToLower("Go IS Fun") // "go is fun"

Sizning versiyangiz faqat ASCII bilan ishlaydi. strings.ToLower esa butun Unicode bilan ishlaydi va bitta chaqiruv, xolos. Standart kutubxonada sizga kerakli narsa allaqachon bo'lsa, o'shandan foydalaning.

Sizning toSlug funksiyangiz — bu kompozitsiya: cleanText keraksizni tozalaydi, spacesToHyphens bo'shliqlarni hal qiladi, strings.ToLower esa yakunlaydi.

>_ Exercise

Istalgan sarlavhani toza URL slugiga aylantiradigan toSlug(title string) string funksiyasini yozing.

Quyidagi uchta tayyor yordamchi funksiyadan pipeline (quvur liniyasi) yasash uchun foydalaning:

  • 1. cleanText — noto'g'ri belgilarni tozalaydi
  • 2. spacesToHyphens — bo'shliqlarni tirega almashtiradi
  • 3. strings.ToLower — hammasini kichik harfga aylantiradi

Misollar:

  • toSlug("My First Blog Post!")"my-first-blog-post"
  • toSlug("Go 1.21: What's New?")"go-121-whats-new"
  • toSlug(" Hello World ")"hello-world"
  • toSlug("UPPERCASE THINGS")"uppercase-things"

Stuck? Reveal a hint to help you.

Hints (0/3)

Key Takeaway

Key Takeaway:

Bitta ishni yaxshi bajaradigan kichik, aniq maqsadli funksiyalar — Go dasturlarining qurilish bloklaridir. Ularni pipeline'ga birlashtiring.