wild card in if condition not working

Hi,

I am using RHEL5.

I have following if condition.

if [ \( "{a}" == "*WARNING*" \) -o ( "{b}" == "*ERROR*" \) ]

In the above condition, if the value of a contains word WARNING, it should match. i.e., WARNING_MESSAGE, CRITICAL WARNING, WARNING ALERT etc. it should match.
For b, alert error, ALERT ERROR, ERROR IMMEDIATE ACTION REQUIRED, etc should match.

But wild card condition is not working. can somebody help me.

Thanks

This should work with ksh93, zsh and bash:

if [[ ($a == WARNING*) || $b == ERROR* ]]; then
   ...

Thanks a lot radoulov.
It is working fine now.