Символът каретка в набори в регулярните изрази на JavaScript
Както знаете, каретката вътре в [ ] прави
отрицание, когато е поставена в началото на скобите.
Следователно, тя е специален символ вътре в
тези скоби. За да получите каретката като символ,
трябва или да я екранирате, или да я преместите от
първата позиция.
Пример
В следващия пример шаблонът за търсене е:
първият символ е всичко освен 'd',
следвано от две букви 'x'.
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[^d]xx/g, '!');
В резултат в променливата ще бъде записано следното:
'! ! ! dxx'
Пример
А сега шаблонът за търсене е: първият символ
- това е 'd' или '^', следвано от две
букви 'x':
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[d^]xx/g, '!');
В резултат в променливата ще бъде записано следното:
'axx bxx ! !'
Пример
Можете да не премествате каретката от първата позиция, а просто да я екранирате с помощта на обратна наклонена черта, и тя ще означава самата себе си:
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[\^d]xx/g, '!');
В резултат в променливата ще бъде записано следното:
'axx bxx ! !'
Практически задачи
Даден е низ:
let str = '^xx axx ^zz bkk @ss';
Напишете регулярен израз, който ще намери низовете по шаблон: каретка или куфарче, а след това две латински букви.
Даден е низ:
let str = '^xx axx ^zz bkk @ss';
Напишете регулярен израз, който ще намери низовете по шаблон: НЕ каретка и не куфарче, а след това две латински букви.
Даден е низ:
let str = '^xx axx ^zz bkk';
Напишете регулярен израз, който ще намери низовете по шаблон: не каретка и не интервал, а след това две латински букви.