regexp kérdés: ? mint karakter engedélyezése

Helló!

Van egy scriptem ami beállítja az url-ben engedélyezett karaktereket

$engedelyezve = 'a-z 0-9~%.:_-';

ez ilyen url-eket enged meg: /osztaly/fuggveny/foo/bar......

szeretném felvenni az engedélyezett karakterek közé a ?-et is, hogy például a /osztaly/fuggveny/foo/bar?4 is működjön

fontos lenne ezt megoldalni, mert a ?szám végződést nem kerülhetem el, (ilyen http kérést kap egy másic script-től, amit nem szerkeszthetek) de nem is használnám fel, mint változót, csak így most nincs engedélyezve a kérdőjel ezért hibát dob a kérésre

Hozzászólások

Escape-eld a '\' karakterrel, vagy tedd be karakterhalmazba..
pl: [a-zA-Z?.*] // betu, kerdojel, pont vagy csillag karakter.. lehet egyedul is, [?]
(a legtobb regexp implementacio halmazon belul nem ertelmezi specialisan a spec. karaktereket, ill. a '-' jelet halmaz vegen nem ertelmezi specialisan tartomanykent, hanem kotojelnek veszi, pl: [A-Z] az osszes nagybeture illeszkedik, mig [AZ-] A, Z es kotojel karakterekre)
a masik hogy "\?\*\."-kent elveszed a spec. jelentest
---------------------
AFPer: We've missed you, did you miss us?
Pratchett: Yes, but I think I have time to reload.