I need to match strings which have `a-z`, `\?` or `\*`, for example:

```
abcd
abc\?d # mush have a \ in front of a ?
abc\*d
ab\?c\*d

```

and exclude strings which don't have `\` in front of other punctuations, such as

```
abc?d
abc*d
ab?c*d

```

I tried `[a-z(?:\\\?)(?:\\\*)]+` (<https://regex101.com/r/5yYBDl/1>), but it doesn't work, because `[]` only supports characters i guess.

Any help would be appreciated.