Я должен сделать точное совпадение строки с регулярным выражением. я должен понять этот шаблон: toCheck должен начинаться с 2 вхождений $ str1, с максимальным 1 вхождением $ str2. Если toCheck соответствует шаблону, я должен написать $ toCheck: success внутри вывода, $ toCheck: fail в противном случае.
Я написал это регулярное выражение:
regex="$1($1)+$2"
Используя сайт regexr.com, я вставил, например:
regex="lo(lo)ba"
toCheck="loloba"
Это успех.
На regerx.com этот матч до последнего ба:
toCheck="lolobaba"
но, по моему bash-коду, это успех.
Это полный код:
toCheck="lolobaba"
regex="lo(lo)+ba"
if [[ $toCheck =~ $regex ]]; then
echo "$toCheck:success" > output
else
echo "$toCheck:failed" > output
fi
Итак, вопрос: как получить точное соответствие между строкой и регулярным выражением?