My [answer here](https://unix.stackexchange.com/questions/12219/searching-strings-on-files/12237#12237) was deleted as 'duplicate', with a link to the faq where is stated, that `exact duplicates` are removed, while the first part used a different syntax - compare yourself: 

```
grep -E -H 'string1|string2|stringn' 
egrep "(string1|string2|string3)" 

```

which is a different syntax, and imho reason enough to be allowed. Let the user up- and downvote, and not moderators decide, which syntax to use. But ...

... but the second part of my answer is completely different from all other solutions:

```
grep pattern file{1..3}

```

compared to 

```
grep pattern file1.txt file2.txt filen.txt
grep pattern file*.txt

```