Autor | Zpráva | ||
---|---|---|---|
IdemeNaHavaj Profil |
#1 · Zasláno: 29. 8. 2015, 15:32:06
Ahoj
mám toto: strtolower(preg_replace('/\s+/', ' ', preg_replace("/[^a-zA-Z0-9\s]/", "", $_POST["badwords"]))); |
||
anonymníí Profil * |
#2 · Zasláno: 29. 8. 2015, 15:54:43
IdemeNaHavaj:
A co jsi už zkoušel? Není to tak těžké. |
||
IdemeNaHavaj Profil |
#3 · Zasláno: 29. 8. 2015, 15:58:46
anonymníí:
nič ja to mám z googlu, nevyznám sa v tom |
||
anonymníí Profil * |
#4 · Zasláno: 29. 8. 2015, 16:54:41
IdemeNaHavaj:
OK, tak je na čase seznámit se s regulárními výrazy, aby ses za chvíli neptal na další základní věc s nimi. 1. Mrkni se na php.net, jaké 3 parametry má funkce preg_replace , kterou používáš dvakrát
2. Na http://www.regularnivyrazy.info zjistíš, co znamená \s+ a sekvence znaků mezi [ a ] , tedy [^a-zA-Z0-9\s] . Přidat diakritiku pak už zvládneš.
Celé by ti to nemělo zabrat více jak 15-20 minut studia, doporučuji. |
||
juriad Profil |
anonymníí:
Opravdu si myslíš, že je jednoduché najít \p{L} ? Je to dost dobře skryté a těžko nalezitelné (php.net/manual/en/regexp.reference.unicode.php) a nikde není napsané, že je to to, co IdemeNaHavaj potřebuje.
IdemeNaHavaj: '/[^\p{L}\d\s]/u' u na konci je modifikátor, který zapíná zpracování podle Unicode.
Pročti si i dokumentaci přímo v PHP: php.net/manual/en/reference.pcre.pattern.syntax.php |
||
IdemeNaHavaj Profil |
#6 · Zasláno: 29. 8. 2015, 17:32:56
ďakujem moc
|
||
anonymníí Profil * |
#7 · Zasláno: 29. 8. 2015, 17:55:42
juriad:
Ano, toto tak snadné najít není. Nicméně nyní jsem myslel obyčejné přidání českých znaků do povolených (resp. nepovolených) znaků. Pro tazatele by toto bylo lehce výhovnější a uměl by si ne/povolené znaky sám korigovat. S tím, co jsi napsal ty, sem za chvilku přijde znovu s podobným dotazem. |
||
Časová prodleva: 9 let
|
0