Pelajaran modul (4/4)
Properti Unicode lolos
Kelas \w, \d, \s di ASCII tidak cukup untuk bahasa Italia, Prancis, Yunani
atau teks emoji. Penawaran JavaScript modern (dengan tanda u -- Unicode).
property escapes \p{...}: kelas semantik berdasarkan Unicode
sifat karakter.
Pattern: \p{L}+ (with flag u)
Sample: Ciao caffe' \u00fcber \u4e16\u754c
^^^^ ^^^^^^^ ^^^^ ^^^^\p{L} = "Huruf apa pun (Unicode)": termasuk huruf beraksen, Cina
ideogram, Sirilik, Yunani\u2026 semuanya. Yang paling umum:
\p{L}-- huruf (abjad apa pun).\p{N}-- angka (digit Arab, Romawi, India\u2026).\p{P}-- tanda baca.\p{S}-- simbol (matematika, mata uang, emoji\u2026).\p{Z}-- spasi/pemisah.\p{Script=Latin}-- khususnya alfabet Latin.\p{Script=Greek}-- alfabet Yunani. Dan sebagainya.
Dan versi yang dinegasikan \P{L}, \P{N}, \u2026
Perbedaan dengan \w dan \d
\\w matches [A-Za-z0-9_] -- ASCII only, no "caffe'"
\\p{L}\\p{N}_ with flag u -- includes accented charactersUntuk parser teks Italia yang kuat, pilih \p{L} daripada \w:
citta', perche', andro' cocok dengan kata-kata.
Properti Unicode dan kompatibilitas browser
Properti Unicode seperti \\p{L} (Surat) atau \\p{Script=Latin} memperluas kelas ke alfabet internasional. Dalam JavaScript, mereka sangat memerlukan tanda u (atau v), jika tidak, mesin akan memunculkan kesalahan sintaksis.
Cobalah
Temukan setiap kata, termasuk yang memiliki aksen (citta', perche', e' \u2026). Gunakan properti escape \\p{L} dengan flag u.
Tunjukkan petunjuk
Ganti \\w+ dengan \\p{L}+ dan tambahkan flag u (selain g).
Solusi tersedia setelah 3 upaya
Tinjau latihan
Temukan setiap simbol Unicode (mata uang, matematika, emoji) dalam teks, kecuali huruf dan angka.
Tunjukkan petunjuk
\\p{S} cocok dengan kategori Simbol Unicode. Ingat bendera u.
Solusi tersedia setelah 3 upaya
Tantangan tambahan
Temukan semua kata yang terdiri dari huruf alfabet Sirilik menggunakan `\p{Script=Cyrillic}`.
Tunjukkan petunjuk
Gunakan \\p{Script=Cyrillic} dengan + quantifier dan bendera u.
Solusi tersedia setelah 3 upaya