Forum Webscript.Ru

Программирование => PHP => Тема начата: pahal от 30 Ноября 2005, 22:23:59

Название: split и обратный слеш \\
Отправлено: pahal от 30 Ноября 2005, 22:23:59
Подскажите, плз, как правильно разбить строку с разделителем "обратный слеш".
Как-то неправильно этот символ понимается и выдаёт глюки.

split("\\",$string); Не хочет правильно разбивать на элементы
Название: split и обратный слеш \\
Отправлено: CGVictor от 01 Декабря 2005, 00:36:43
pahal
Вообще - удвоить (\\\\) слеш.
А так... split... ээээ... explode("\\\\",$string); ???
Название: split и обратный слеш \\
Отправлено: pahal от 01 Декабря 2005, 12:54:00
Да это всё не помогает
Есть, например строка "D:\\D\\11\\FOTO\\101111.jpg"
Пытаюсь разбить, но в массиве получается
по последнему слешу всегда "FOTOA111.jpg", куда-то пропадают символы....
Название: split и обратный слеш \\
Отправлено: pahal от 01 Декабря 2005, 14:19:36
Вся беда в том, последовательности типа "\\11" "\\10" воспринимаются как спец символы и заменяются на что-то.
Как же их правильно представлять в регулярном выражении?
Название: split и обратный слеш \\
Отправлено: Меняздесьдавнонет от 01 Декабря 2005, 19:59:40
а зачем тебе регулярное?
откуда у тебя последовательности типа "\\11" "\\10" в регулярном выражении?
ты эту свою строку на экран выводимть пробовал?
Название: split и обратный слеш \\
Отправлено: pahal от 01 Декабря 2005, 21:48:23
Ну вот, например "D:\\D\\11\\FOTO\\101111.jpg"
Может же файл, например, лежать по пути с подобным названием
Название: split и обратный слеш \\
Отправлено: pahal от 01 Декабря 2005, 21:49:39
При выводе  на экран "\\11" "\\10"  съедаются
Название: split и обратный слеш \\
Отправлено: Меняздесьдавнонет от 02 Декабря 2005, 09:19:40
с чего ты взял, что при выводе?
вот если может файл лежать - вот с ФаЙЛОМ и работай.
работай, вообще, только с ФАКТАМИ.
а то у тебя такой мусор в голове, что и за сто лет не разгрести. слеши в регах, вывод на экран, файлы. вё по-разному работает, а у тебя - всё в куче.

для начала почитай-ка ты мануал пхп про строки.
Название: split и обратный слеш \\
Отправлено: eme от 10 Декабря 2005, 00:49:29
попробуй вместо двойных кавычек, заключить в одинарные
explode(\'\\\',$string);
Название: split и обратный слеш \\
Отправлено: hanslinger от 10 Декабря 2005, 12:06:16
Цитировать
explode(\'\\\\\',$string);

Сначала сам попробуй.