Forum Webscript.Ru
Программирование => PHP => Тема начата: FinT от 29 Марта 2005, 09:18:07
-
Допустим есть такая строка:
hjf=лпаошд/gfdsi,tratata=ошап\\авщеьыэж,mumu=таовы\\djg,dfsu=dsakg и т.д.
Как вы заметили тут совподения в том что переменная (которая мне нужна) стоит перед = ...
Короче нужно вырезать ненужный хлам стоящий в интервале = и , т.е. по примеру =лпаошд/gfds =ошап\\авщеьыэж =таовы\\djg
Результат таков:
hjf,tratata,dfsu
Вместо всяких букв может быть ЛЮБОЕ слово любые символы...
Короче нужно вырезать от = до , (Вырезать включая = но не включая ,) Или хотяб все вырезать... :) ХЕЛП
-
ИМХО, тебе подойдет следующая функция, во избежания рег/эксп.
explode() (http://www.php.net/manual/ru/function.explode.php)
-
for_i_0 , Даже если он разабьет функцией explode() то ему всеравно придется чистить элементы масива от ненужных компонентов строки. Может всетаки регесп будет удобней?
-
Lutik:
чистить элементы масива от ненужных компонентов строки
ещё один explode()
Lutik:
Может всетаки регесп будет удобней?
может.
пусть сам решает
-
Lutik
Если не ошибаюсь, регулярные выражения нужно использывать именно в тех случиях, когда их использования неизбежно.
-
for_i_0
да нет, на самом деле использоать можно там, где удобно
-
Мда... Исчерпывающая инфа :)
Может кто прмер напишет?
-
for_i_0:
ИМХО, тебе подойдет следующая функция, во избежания рег/эксп.
explode()
И как ты это представляеш? Если эксплойдить по = то он берет 0 элемент как надо, а именно hjf а последующие с мусором "лпаошд/ gfdsi, tratata таовы\\djg,dfsu"
Или еще проэксплойдить? Это не "напрягет"? Мнеб поменьше лишней работы скрипта... Нет такой процедуры, которая вырезает от заданного символа до заданного символа?
-
Lutik:
for_i_0 , Даже если он разабьет функцией explode() то ему всеравно придется чистить элементы масива от ненужных компонентов строки. Может всетаки регесп будет удобней?
Ага давай про регепс... Плз...
-
foreach(explode(",","string") as $item) {
print_r(explode("=",$item));
}
Какой в ... регексп?
-
FinT:
Это не "напрягет"?
нет, не напрягает
Нет такой процедуры, которая вырезает от заданного символа до заданного символа?
есть, и не одна. читай [p]strings[/p]
FinT:
Ага давай про регепс...
сколько угодно: PHP FAQ: Регулярные выражения. (http://phpfaq.ru/regexp)
-
RomikChef:
да нет, на самом деле использоать можно там, где удобно
В принципе понятно. Только вот остался еще один вопрос, который думаю поставит все точки над и.
А те, утверждения, что рег/экспы работают гораздо медленее чем встроенные PHP функции ?
или я не туда завернул :) ?
-
for_i_0:
А те, утверждения, что рег/экспы работают гораздо медленее
как ты понимаешь, выделенное слово несёт скорее эмоциональную, чем смысловую нагрузку.
А верить надо только цифрам.
"быстрее во столько-то раз, вот результаты тестов, вот методика тестирования".
плюс, кроме собственно сравнения, есть ещё относительное время операции в скрипте.
Допустим, скрипт выполняется одну десятую секунды.
Насколько он ускорится если ты заменишь прег на стр в одном месте? Ты физически не смотжешь заметить разницу
-
RomikChef
[off]Спасибо, вопросов больше нет.[/off]