Я бачив цей приклад:
hello=ho02123ware38384you443d34o3434ingtod38384day
echo ${hello//[0-9]/}
З чого випливає цей синтаксис: ${variable//pattern/replacement}
На жаль, patternполе, схоже, не підтримує синтаксис повного регексу (якщо я використовую .або \s, наприклад, намагається відповідати буквальним символам).
Як я можу шукати / замінювати рядок, використовуючи повний синтаксис регулярних виразів?
\sне входить до стандартного синтаксису регулярного вираження, визначеного POSIX (ні BRE, ні ERE); це розширення PCRE, і він здебільшого не доступний із оболонки [[:space:]]є більш універсальним еквівалентом.
\sможе бути замінений [[:space:]], до речі, з .допомогою ?і extglob розширення мови шаблонів базової оболонки може використовуватися для таких речей , як додаткові підгрупи, повторюваних груп, тощо.