A czego się dziwisz, skoro masz 3 podwójne apostrofy
"#^([a-zA-Z-?$%
"]+)$#
" i drugi z nich Ci
zamyka wyrażenie.
^ oznacza, że ciąg ma być na początku
$ że ciąg na końcu ma być
Tak więc ^ciąg$ oznacza, że to ma być jedyna całość w szukanym ciągu
Sam zobacz:
http://www.phpf1.com/tutorial/php-regular-expression.htmlI nie licz, że na polskich stronach znajdziesz wytłumaczone to łopatologicznie, jak krowie na rowie. Najlepsze przykłady i tutoriale są w języku angielskim.
A to że Ty nie uznałeś iż coś jest "dobre" to samo znaczy dla innych. Bez obrazy, ale patrząc co piszesz mam wrażenie, że dla Ciebie nawet podstawy są za trudne i nie przejawiasz żadnej ochoty na naukę tego, tylko szukasz rozwiązania po najmniejszej linii oporu, bo pytania i problemy jakie rzucasz są jako komentarze do artykułów o wyrażeniach regularnych. Czyli nawet do tutoriali jak widzę nie zaglądasz, choć tak twierdzisz.