Autor | Zpráva | ||
---|---|---|---|
nethor Profil |
#1 · Zasláno: 27. 3. 2015, 11:28:09
Zdravím,
v CMS používám fci, která nahrazuje za předložkami běžnou mezeru tvrdou mezerou: function Predlozky($text,$DelkaPredlozek=1){ $p[] = "~(\s[\w|ě|š|č|ř|ž|ý|á|í|é|ď|ť|ň|ú|ů]{1,$DelkaPredlozek})\s+~is"; $r[] = '$1 '; $text = preg_replace($p, $r, $text); return $text ; } Funguje bez problémů, až dnes jsem na jeden narazil; Neumí upravit více předložek(/spojek) za sebou. Např. v textu '... a v případě zájmu .... ' nahradí pouze 1. mezeru: ' ... a v případě zájmu .... '. fci jsem tedy upravil: function Predlozky($text,$DelkaPredlozek=1){ $p[] = "~((\s|\xC2\xA0| )[\w|ě|š|č|ř|ž|ý|á|í|é|ď|ť|ň|ú|ů]{1,$DelkaPredlozek})\s+~is"; $r[] = '$1 '; $text = preg_replace($p, $r, $text); return $text ; } .. ale stejně tento problém neřeší, nemůžu přijít na to proč.. Poradíte? |
||
tiso Profil |
#2 · Zasláno: 27. 3. 2015, 13:02:38
Pretože ti to zoberie predložku aj z oboma medzerami okolo nej.
$p[] = "~((?<=\s|\xC2\xA0| )[\w|ě|š|č|ř|ž|ý|á|í|é|ď|ť|ň|ú|ů]{1,$DelkaPredlozek})\s+~is"; |
||
Časová prodleva: 3 dny
|
|||
nethor Profil |
#3 · Zasláno: 30. 3. 2015, 12:21:36
Děkuju.
|
||
Časová prodleva: 9 let
|
0