Tanda karakter caret ^ dan tanda dollar $ memiliki arti spesial pada regexp. Tanda-tanda tersebut dipanggil dengan nama ???Ancors???.
Tanda caret ^ membandingkan awalan dari text, dan tanda dollar $ ??? membandingkan akhirannya.
Contoh, Kita coba jika text nya memiliki awalan Mary:
let str1 = "Mary had a little lamb";
alert(/^Mary/.test(str1)); // true
Pola ^Mary berarti: ???text nya dimulai dengan Mary???
Sama seperti ini, kita bisa mencoba jika text nya berakhiran dengan snow menggunakan snow$:
let str1 = "it's fleece was white as snow";
alert(/snow$/.test(str1)); // true
Dalam beberapa kasus tertentu kita bisa menggunakan metode string startsWith/endsWith. Regular Expression hanya digunakan untuk test yang lebih kompleks.
Membandingkan keseluruhannya
Kedua achors ^...% sering digunakan untuk menguji apakah sebuah string sama keseluruhannya secara pola atau tidak. Contohnya, untuk memeriksa apakah input dari user menggunakan format yang benar.
Kita coba apakah 12:34 adalah format string atau bukan. Menggunakan: dua angka, lalu titik dua, lalu dua angka lagi.
Didalam bahasa regular expressions itu adalah pola:\d\d:\d\d:
let goodInput = "12:34";
let badInput = "12:345";
let regexp = /^\d\d:\d\d$/;
alert(regexp.test(goodInput)); // true
alert(regexp.test(badInput)); // false
Disini yang cocok untuk pola:\d\d:\d\d harus dimulai dengan ^ dan diakhiri dengan $ yang mana harus cocok.
Seluruh string nya harus menggunakan format yang sama. Jika ada yang berbeda atau ada karakter lebih, maka hasilnya akan menjadi false.
Anchors bertindak berbeda jika tanda pola:m ada. Kita akan mempelajarinya di bab selanjutnya.
Anchors pola:^ dan pola:$ adalah test. Keduanya memiliki ???zero width???.
Dengan kata lain, keduanya tidak mencocokan karakter, akan tetapi memaksa regexp untuk memeriksa kondisi (awal text/akhir text)