regexp под PHP или JS

Старый mweb

Модератор: [mweb team]

regexp под PHP или JS

Сообщение Muerto Пт янв 20, 2012 23:23

Нужен регвыр, который бы помог сплитнуть строку типа первый, второй, 3, "четыре, пять, шесть", семь, "восемь" восемь с половиной, девятый, "десять, стотыщьпятьсот" в массив с дроблением по запятой, но так, чтобы в кавычках не дробить (т. е. запятые в кавычках не являются сепараторами. В общем, на выходе из этой строки должен получиться массив
    первый
    второй
    3
    "четыре, пять, шесть"
    семь
    "восемь" восемь с половиной
    девятый
    "десять, стотыщьпятьсот"
P.-S. Под PERL не предлагать.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Re: regexp под PHP или JS

Сообщение Jedi Пн янв 23, 2012 12:21

Аватара пользователя
Jedi
Хронический Астматик
 
Сообщения: 1852
Зарегистрирован: Вс сен 08, 2002 0:01
Откуда: Russia

Re: regexp под PHP или JS

Сообщение Лесьяр Ср янв 25, 2012 9:50

("[0-9а-яё, ]*"|[0-9а-яё, ]*?)\s*(?:,|$)
Аватара пользователя
Лесьяр
Редко заходит
 
Сообщения: 148
Зарегистрирован: Вт сен 26, 2006 15:35

Re: regexp под PHP или JS

Сообщение Лесьяр Ср янв 25, 2012 9:55

Вот так лучше:
("[^"]*"[^,]*?|[^,]*?)\s*(?:,|$)\s*

Но, если внутри кавычек будут другие кавычки не сработает, тут надо знать по какому принципу экранируются кавычки в кавычках)
Аватара пользователя
Лесьяр
Редко заходит
 
Сообщения: 148
Зарегистрирован: Вт сен 26, 2006 15:35

Re: regexp под PHP или JS

Сообщение Лесьяр Ср янв 25, 2012 9:58

Еще оптимизировал:
((?:"[^"]*")?[^,]*?)\s*(?:,|$)\s*
Аватара пользователя
Лесьяр
Редко заходит
 
Сообщения: 148
Зарегистрирован: Вт сен 26, 2006 15:35

Re: regexp под PHP или JS

Сообщение Jedi Ср янв 25, 2012 12:51

А нафига регэкспом если можно стандартную пхп функцию использовать? Там в параметрах указать разделитель(запятая) и считать ли строку в кавычках как одну целую
Аватара пользователя
Jedi
Хронический Астматик
 
Сообщения: 1852
Зарегистрирован: Вс сен 08, 2002 0:01
Откуда: Russia

Re: regexp под PHP или JS

Сообщение Jedi Ср янв 25, 2012 12:52

Потому как я понимаю - это строка CSV формата?
Аватара пользователя
Jedi
Хронический Астматик
 
Сообщения: 1852
Зарегистрирован: Вс сен 08, 2002 0:01
Откуда: Russia

Re: regexp под PHP или JS

Сообщение Лесьяр Ср янв 25, 2012 16:00

А если js?
Аватара пользователя
Лесьяр
Редко заходит
 
Сообщения: 148
Зарегистрирован: Вт сен 26, 2006 15:35

Re: regexp под PHP или JS

Сообщение Jedi Чт янв 26, 2012 8:56

Если JS то да. но вопрос то был либо ПХП либо JS. можно на пхп выполнить, а результат отдать JS :)
Аватара пользователя
Jedi
Хронический Астматик
 
Сообщения: 1852
Зарегистрирован: Вс сен 08, 2002 0:01
Откуда: Russia

Re: regexp под PHP или JS

Сообщение Muerto Пн фев 06, 2012 14:16

Всем спасибо. Регекспы не проверял, поскольку заказ уплыл.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва


Вернуться в Архив

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22

cron