Я пытаюсь использовать регулярное выражение в сценарии оболочки, чтобы найти подстроку.Bash: регулярное выражение для нахождения шаблона с двойными кавычками
Оригинальная строка:
"relative-to="jboss.server.base.dir" scan-enabled="true" scan-interval="0""
Пытаясь найти следующую подстроку:
"scan-enabled="true""
Код:
str="relative-to=\"jboss.server.base.dir\" scan-enabled=\"true\" scan-interval=\"0\""
reg='scan-enabled.*"'
[[ "$str" =~ $reg ]] && echo $BASH_REMATCH
, но она возвращается,
scan-enabled="true" scan-interval="0"
Может ли кто-нибудь помочь в поиске шаблона с двойными кавычками с использованием регулярного выражения?
Bash версия: 4.1.2 (1) -релиз
Спасибо за усилия Biegeleisen @ Тим. Я пытаюсь использовать это, reg = 'scan-enabled = \ ". * \"' [["$ str" = ~ $ reg]] && echo $ BASH_REMATCH, но он все равно возвращает "scan-enabled =" true scan-interval = «0» « – apgp88
№ Если вы используете' $ BASH_REMATCH', я считаю, что он всегда будет давать всю строку ввода. –
Ох, проблема с разрешением сканирования может иметь любое значение, и я хочу захватить все это. Я использую регулярное выражение 'scan-enabled = \'. * \ "' – apgp88