I need a help from some regular expression expert.

I have a script which give a fixed list of pattern. With very simple regular expression i search for pattern existence in target text. For example:

```
/.*TFT.*/
/.*LCD.*/
/.*ANTI-GLARE.*/

```

Those strings - TFT,LCD,ANTI-GLARE are fixed - I can't modify them. Well, the problem is in ANTI-GLARE - that dash will cause not to match AntiGlare. I know that id I make regex like this:

```
/.*ANTI-?GLARE.*/

```

this will match both variants, but i can't modify that string. My question is:
Is there another way to make symbol optional, than exclamation mark in pattern?

**EDIT - clearance**

After some answers and hints, i'll try to give more specific description of my problem.
I have a strings in table:

Anti Glare

```
TFT
AntiGlare
LCD

```

Via XML I receive new model which description is like:

> 
> Anti-Glare
> 
> 
> 

i need to ensure - did i have a entry with "Anti Glare" like description. I can not change that Anti-Glare received, because there a lot of strings - vary in wide range - it's impossible to build logical group or any like this in regex. it's build with php script like:

```
$rexp="/.*~.*/i"; 

```

* where ~ is replaced with that string.

$rexp=str\_replace('~',$rexp,$cond);
* where $cond holds current string received

Operator can change any part outside that ~, but can not in ~ content - there will be a thousands of them