Delete all files if another files in the same directory has a matching occurence of a specific word

Hello,
I have several files in a specific directory.
A specific string in one file can occur in another files.
If this string is in other files. Then all the files in which this string occured should be deleted and only 1 file should remain with the string.

Example.
file1
ShortName "Blue Jeans"
price 89.47
cur EURO
file2
ShortName "Blue Jeans"
Price 59.47
CUR USD
file3
ShortName "Blue Jeans"
Price 99.47
CUR GBP
Since the value of ShortName "Blue Jeans" is occuring in file2 & file3. Both this file should be deleted. Similarly files with other ShortName
Could any one please help me how can it done via script (ksh, SED, AWK). I am on solaris.

Thank you

How about:

awk '/ShortName / && A[$0] { print FILENAME } {A[$0]=1}' infile* | xargs rm

you can use

| xargs echo rm

to see if the awk script has the desired result first.

Thank you.
I was trying but some how the script does not work.

awk '/ShortName/ && A[$0] {print FILENAME} {A[$0]=1}' infile* | xargs echo rm

Could you please tell me what this subscript A[$0] and A[$0]=1 means
$0 represent the complete line.
A[$0]=1 assignment

this statement work
awk '/ShortName/ {print FILENAME, $2}' file1
where $2 the value of ShortName