Perintah 'atau' dalam Ungkapan Biasa JavaScript
Dalam pelajaran ini, kita akan menganalisis perintah
'|', yang mewakili
varian 'atau' yang lebih
berkuasa berbanding
dengan perintah [ ]. Perintah ini membolehkan
membahagikan ungkapan biasa kepada beberapa bahagian.
Pada masa yang sama, yang dicari boleh sama ada jatuh di bawah satu
bahagian ungkapan biasa, atau di bawah yang lain. Mari kita
lihat pada contoh.
Contoh
Dalam contoh ini, corak carian adalah seperti berikut: tiga
huruf 'a' atau tiga huruf 'b':
let str = 'aaa bbb abb';
let res = str.replace(/a{3}|b{3}/g, '!');
Hasilnya, yang berikut akan ditulis ke dalam pembolehubah:
'! ! abb'
Contoh
Dalam contoh ini, corak carian adalah seperti berikut: tiga
huruf 'a' atau dari 1 dan lebih
huruf 'b':
let str = 'aaa bbb bbbb bbbbb axx';
let res = str.replace(/a{3}|b+/g, '!');
Hasilnya, yang berikut akan ditulis ke dalam pembolehubah:
'! ! ! ! axx'
Contoh
Dalam contoh ini, corak carian adalah seperti berikut: satu atau lebih huruf atau tiga digit:
let str = 'a ab abc 1 12 123';
let res = str.replace(/[a-z]+|\d{3}/g, '!');
Hasilnya, yang berikut akan ditulis ke dalam pembolehubah:
'! ! ! 1 12 !'
Contoh
Palang menegak boleh membahagikan ungkapan biasa bukan kepada dua bahagian, tetapi kepada sebarang bilangan bahagian:
let str = 'aaa bbb ccc ddd';
let res = str.replace(/a+|b+|c+/g, '!');
Hasilnya, yang berikut akan ditulis ke dalam pembolehubah:
'! ! ! ddd'
Contoh
Jika palang menegak berada di dalam kurungan
bulat, maka 'atau' berfungsi hanya di dalam
kurungan tersebut.
Sebagai contoh, mari cari rentetan mengikut corak
berikut: pada awalnya berdiri sama ada 'a',
atau 'b' satu atau lebih kali, dan kemudian
dua huruf 'x':
let str = 'axx bxx bbxx exx';
let res = str.replace(/(a|b+)xx/g, '!');
Hasilnya, yang berikut akan ditulis ke dalam pembolehubah:
'! ! ! exx'
Tugas Praktikal
Diberikan rentetan:
let str = 'aeeea aeea aea axa axxa axxxa';
Tulis ungkapan biasa yang akan mencari rentetan
mengikut corak: di tepi berdiri huruf 'a',
dan di antaranya - sama ada huruf 'e' sebarang
bilangan kali atau huruf 'x' sebarang
bilangan kali.
Diberikan rentetan:
let str = 'aeeea aeea aea axa axxa axxxa';
Tulis ungkapan biasa yang akan mencari rentetan
mengikut corak: di tepi berdiri huruf 'a',
dan di antaranya - sama ada huruf 'e' dua kali
atau huruf 'x' sebarang bilangan kali.