![]() |
|
||||||||||
|
|||||
|
hi ,
problemma takogo roda ..... ispol'zuu regular expressions (preg_replace();) ix neskol'ko podrjad ......... 15-20 kak mne uznat' skol'ko raz VSEGO (t.e. vse oni vmeste) sdelali zameni ?????? t.e. $code="asdqwefghzxcvbnrtyfghasdqwe"; $code=preg_replace("'asd'is","qwe",$code); $code=preg_replace("'zxc'is","vbn",$code); $code=preg_replace("'dfg'is","ert",$code); $code=preg_replace("'yui'is","hjk",$code); mna nado sdelt' ne bolle N kolichestva zamen , kak ??????! reshenie kak // $s=array ("my regular"); $r=array("my replacment"); $code=preg_replace($s,$r,$code); // ne podxodit.!
__________________
always confused |
|
|||||
|
Pochemu ne podhoidit? V smisle - ne furichit ili iz principa?
Potomu-chto vishenapisanoye preg ($array_patterns, $array_replaces, $input) dolzno rabotat... Yesho mozno sdelat tak <? function reps ($_) { $pats = array ("pat0", "pat1"); $reps = array ("rep0", "rep1"); $i = 0; foreach ($patterns as $pat) { $_ .= ereg_replace ($pat, $reps[$i++], $_); } return ($_); } ?> |
|
|||||
|
лады ... , я просто плохо указал мою проблему !
масивы я могу использовать , то что я их не пользовал , дурак я .. моя проблема такова, что мне надо проверить сколько раз произошла замена и если замена произошла больше чем N раз , то надо выдать ошибку , а не ограничить ........ так же по ходу дела , можно ли каким то способом вытащить преременные $1 $2 $3 .... из preg_replace(); ??? если писать
__________________
always confused |
|
|||||
|
В таком случае ябы посоветовал тебе юзать preg_replace_callback (mixed pattern, mixed callback, mixed subject [, int limit);
Фишка вот в чем : вместо обыкновенного replac-a preg_replace_callback заменяетсвой стринг на то что возвращает функция [имя которой] ты пишеш во втором аргументе. Получается следующие :
|
|
|||||
|
ЗЫ
Не сомневаюсь что все можно сделать легче. |
|
|||||
|
посиб , идея понята
![]()
__________________
always confused |
|
|||||
|
Простите! п почему сначала оба писали на транслите, а потом на русском?
__________________
Что за дурь? 50 символов в подписи!? |
|
|||||
|
шифровались
ЗЫ : я сидел за компом без кирилики ![]()
__________________
always confused |
|
|||||
|
А мне в лом было клаввиши "нащупывать" на испанской клаве. А потом я вспомнил как приятно читать мессаги на кирилице.
![]() |
![]() |
Часовой пояс GMT +4, время: 05:43. |
|
|
« Предыдущая тема | Следующая тема » |
|
|