Курс по Raku / Регулярни изрази и граматики / Регулярни изрази / Котви
Граници на думи
Съпоставянето на cat успява вътре в
category, защото трите букви наистина са там. Често това не
е онова, което искате — имате предвид цялата дума cat.
Котвата за граница на дума решава това.
<<съвпада на левия ръб на дума (началото на дума)>>съвпада на десния ръб на дума (края на дума)
Обвийте дума в тези котви, за да я съпоставите само като цяла дума:
say 'the cat sat' ~~ /<< cat >>/; # 「cat」
say so 'category' ~~ /<< cat >>/; # FalseВ category няма граница на дума веднага след
cat, така че закотвеният шаблон се проваля — точно
поведението, което искахме.
Границата на дума стои между словесен знак (\w) и
несловесен знак, така че тя сама не поглъща нищо; както ^ и
$, тя само утвърждава позиция.
Двете котви могат да се запишат и със знаците гийме « и
», ако предпочитате тях. Държат се точно като
<< и >>:
say 'the cat sat' ~~ /« cat »/; # 「cat」
say so 'category' ~~ /« cat »/; # FalseПрактика
Направете 1 тест върху съдържанието на тази тема.
Навигация в курса
← Тест — Котви на низа | Тест — Котви →
💪 Или преминете направо към упражненията в този
раздел.