Code:
sed -i "s|<img heigth="1" width="1" border="0" src="http:\\imgddd.net*">||g" "${FILE}"
You are using a shell style wild cards: "net*
To match any character use: .*
The dot matches any character. The * substitutes for any number of the preceding pattern, including zero.
The backslash needs to be escaped, since it is the metacharacter used to escape characters. This means using \\ for each \.
You might want to use: [^"]*
This matches any number of characters which aren't the " character.
Also look at [[:digit:]] or [0-9] to match digits.
[[:digit:]]* for zero or more digits
[[:digit:]][[:digit:]]* for one or more digits.
You can use the option for extended regex expressions and use
[[:digit:]]+ for one or more digits.
Hoever in this particular case:
s|<img[^>]*src=http:\\\\imgddd\.net[^>]*>||g should be enough to contain the entire pattern and prevent false positives if http:\\imgddd.net is unique to the lines you want to remove.
---
Also, if the filenames might contain white space one technique is to use -print0 in find, and | xargs -0 <command> to process the files. Another method is to pipe the output of a list through "tr '\n' '\0'" between find (or cat filelist) and xargs. This is to prevent the "while read FILE" line from reading a filename as two or more arguments.