Попробуйте:
egrep "and(.*?and){3}" data.txt
И для совпадения "and"
независимо от регистра ("And"
или "AND"
, ...), но пропустите "and"
, который является частью другогоword (или name), попробуйте:
egrep -i "\band\b(.*?\band\b){3}" data.txt
-i
заставляет игнорировать регистр, а границы слова \b
игнорируют такие случаи, как "Anand"
и "Anderson"
.