Страница 1 из 1
regexp под PHP или JS
Добавлено:
Пт янв 20, 2012 23:23
Muerto
Нужен регвыр, который бы помог сплитнуть строку типа
первый, второй, 3, "четыре, пять, шесть", семь, "восемь" восемь с половиной, девятый, "десять, стотыщьпятьсот" в массив с дроблением по запятой, но так, чтобы в кавычках не дробить (т. е. запятые в кавычках не являются сепараторами. В общем, на выходе из этой строки должен получиться массив
первый
второй
3
"четыре, пять, шесть"
семь
"восемь" восемь с половиной
девятый
"десять, стотыщьпятьсот"
P.-S. Под PERL не предлагать.
Re: regexp под PHP или JS
Добавлено:
Пн янв 23, 2012 12:21
Jedi
Re: regexp под PHP или JS
Добавлено:
Ср янв 25, 2012 9:50
Лесьяр
("[0-9а-яё, ]*"|[0-9а-яё, ]*?)\s*(?:,|$)
Re: regexp под PHP или JS
Добавлено:
Ср янв 25, 2012 9:55
Лесьяр
Вот так лучше:
("[^"]*"[^,]*?|[^,]*?)\s*(?:,|$)\s*
Но, если внутри кавычек будут другие кавычки не сработает, тут надо знать по какому принципу экранируются кавычки в кавычках)
Re: regexp под PHP или JS
Добавлено:
Ср янв 25, 2012 9:58
Лесьяр
Еще оптимизировал:
((?:"[^"]*")?[^,]*?)\s*(?:,|$)\s*
Re: regexp под PHP или JS
Добавлено:
Ср янв 25, 2012 12:51
Jedi
А нафига регэкспом если можно стандартную пхп функцию использовать? Там в параметрах указать разделитель(запятая) и считать ли строку в кавычках как одну целую
Re: regexp под PHP или JS
Добавлено:
Ср янв 25, 2012 12:52
Jedi
Потому как я понимаю - это строка CSV формата?
Re: regexp под PHP или JS
Добавлено:
Ср янв 25, 2012 16:00
Лесьяр
А если js?
Re: regexp под PHP или JS
Добавлено:
Чт янв 26, 2012 8:56
Jedi
Если JS то да. но вопрос то был либо ПХП либо JS. можно на пхп выполнить, а результат отдать JS :)
Re: regexp под PHP или JS
Добавлено:
Пн фев 06, 2012 14:16
Muerto
Всем спасибо. Регекспы не проверял, поскольку заказ уплыл.