How to grep for a URL in a file?
grep, regex
Solution
You missed the character class `0-9` (also useless use of cat):
grep -o 'http://ex[a-zA-Z.-]*/[a-zA-Z0-9+-]*/[a-zA-Z0-9.,-+]*' file.html
Slight improvement, use `-i` for case insensitivity and only match images `.jpg` or `.jpeg`.
grep -io 'http://ex[a-z.-]*/[a-z0-9+-]*/[a-z0-9.,-+]*[.jpe?g]' file.html
Or how about just:
grep -io 'http://ex.example.*[.jpe?g]' file.html
Problem
For example, I have a huge HTML file that contains img URL: http://ex.example.com/hIh39j+ud9wr4/Uusfh.jpeg I want to get this URL, assuming it's the only url in the entire file. ``` cat file.html | grep -o 'http://ex[a-zA-Z.-]*/[a-zA-Z.-]*/[a-zA-Z.,-]*' ``` This works only if the URL doesn't have the plus signs. How do I make work for + signs as well?