в моей Баш скрипт я использую регулярное выражение, чтобы соответствовать строку присваивания значения переменной, например:необходимо улучшить BASh РегВыр
- Var = Значение
- вар = Value;
- Var = Значение
- Var = Value;
- Var Значение
регулярное выражение я разработал: \s*${varName}\s*\={0,1}\s*.*\s*;{0,1}
это регулярное выражение может соответствовать каждые экземпляры выше, но и еще один пример, который я не хочу, что VarValue
я не могу подумайте о способе сделать мое регулярное выражение не совпадающим с экземпляром VarValue.
Обоснования ответов (и ответа я думал о проводке) является то, что вы берете матч с «переменной» частицей, нечувствительны к регистру, то по крайней мере один пробел или равно знак, затем другое слово. Существуют escape-последовательности (или классы POSIX) для обнаружения «слов» и границ слов. – heltonbiker
Bash regex использует ERE, с которым \ s не будет работать. Вы используете 'grep -P' в bash вместо встроенного регулярного выражения bash? – jordanm
@jordanm Да, я использую 'egrep' для соответствия строке. –