Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.04.2009, 20:06   #1
memka
Пользователь
 
Аватар для memka
 
Регистрация: 31.03.2009
Сообщений: 71
По умолчанию замена знаков и букв

приведу пример
$aa="pam+param-pam'pampma";

хотелось бы получить на выходи
$aa="pamparampampampma";

т.е. удалять символы!

как это можно реализовать
, и ещё один по тойже теме вопрос

как анологично можно заменять
$aa="aabbcc";
и получить
$aa="aabbaa";
я новичок в php
memka вне форума Ответить с цитированием
Старый 16.04.2009, 20:47   #2
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

изучите функцию str_replace

для первого случая она будет выглядеть примерно так:
PHP код:
str_replace(array('+','-',"'"),array('','',''),"pam+param-pam'pampma"); 
для второго:
PHP код:
str_replace('c','a','aabbcc'); 
свободен...
wall66 вне форума Ответить с цитированием
Старый 18.04.2009, 15:08   #3
Jensi
beneto.ru
Форумчанин
 
Регистрация: 09.03.2009
Сообщений: 174
По умолчанию

Можно ещё так: http://www.phpfaq.ru/regexp
Или так:
Код:
$aa = str_replace("'","",$aa);
wall66, может я что-то не понял, но зачем Вы написали в str_replace массивы?
Код:
str_replace(array('+','-',"'"),array('','',''),"pam+param-pam'pampma");
Jensi вне форума Ответить с цитированием
Старый 18.04.2009, 16:29   #4
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

потому-что в str_replace(1, 2, 3)
1 - что заменяется
2 - на что заменяется
3 - над чем выполнять операцию.
И через запятую ты не напишешь если есть несколько примеров.
there are no limits when you're software engineer
spein вне форума Ответить с цитированием
Старый 18.04.2009, 16:51   #5
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

Цитата:
Сообщение от Jensi Посмотреть сообщение
...
потому что ваш пример уберет только одинарные кавычки, и для удаления других символов функцию придется применить еще два раза

в качестве объектов поиска и замены можно указывать массивы, в таком случае элементы из первого массива будут заменяться на соответствующие элементы второго
свободен...
wall66 вне форума Ответить с цитированием
Старый 18.04.2009, 21:22   #6
Jensi
beneto.ru
Форумчанин
 
Регистрация: 09.03.2009
Сообщений: 174
Радость

PHP код:
$aa str_replace("'","",$aa); 
Как лучше использовать str_replace, с массивами или записывая всё в строках? У меня на сайте стоит всё в строках для Bbcode, а не с массивом.
Под словом " лучше " понимается нагрузка и скорость работы скрипта
Цитата:
И через запятую ты не напишешь если есть несколько примеров.
Всё правильно, нужно записывать построчно
Jensi вне форума Ответить с цитированием
Старый 19.04.2009, 08:53   #7
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

скорость будет фактически одинаковая (отличаться не более чем на 10%), а читаемость кода гораздо выше в вашем варианте

если код не потребуется понимать другим программистам и хочется максимизировать скорость - применяйте массивы

а вообще, для бб-кодов посоветовал бы применять регекспы
свободен...
wall66 вне форума Ответить с цитированием
Старый 19.04.2009, 16:44   #8
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Цитата:
Сообщение от wall66 Посмотреть сообщение
а вообще, для бб-кодов посоветовал бы применять регекспы
Почему?
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 19.04.2009, 18:51   #9
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

Цитата:
Сообщение от Johnatan Посмотреть сообщение
Почему?
можно простым образом добавить много-много всяких разных фильтров вроде распознавания параметров бб-кода, отсева незакрытых кодов, неправильной вложенности и т п
свободен...
wall66 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Замена кода программы с Delhi5 на Delhi7 либо замена базы данных с Acessa на MySQL DorianLeroy Фриланс 8 18.02.2009 18:52
Дан текст из строчных латинских букв и других знаков. Вычеркнуть из текста все гласные буквы." XeRoX Помощь студентам 6 15.06.2008 09:41
(+,-,*,/)Расстановка знаков МаксимNEWProgramm Паскаль, Turbo Pascal, PascalABC.NET 5 17.04.2008 17:04
Замена маленьких букв на большие. DELPHI Absent Помощь студентам 2 23.03.2008 17:19