Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Регулярное выражение: Взять все строки до точки с запятой / 8 сообщений из 8, страница 1 из 1
26.02.2013, 15:10
    #38166560
stavelot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Регулярное выражение: Взять все строки до точки с запятой
Как взять все строки до точки с запятой? Причем это может быть одна строка или несколько строк
...
Рейтинг: 0 / 0
26.02.2013, 16:02
    #38166692
stavelot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Регулярное выражение: Взять все строки до точки с запятой
Решил: ([^;]|\n)+;

Спасибо!
...
Рейтинг: 0 / 0
26.02.2013, 16:06
    #38166705
Програмёр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Регулярное выражение: Взять все строки до точки с запятой
stavelotКак взять все строки до точки с запятой? Причем это может быть одна строка или несколько строк

что это значит? Варианты в моей голове:
1. В каждой строке есть точка с запятой, и надо взять всю инфу в каждой строке до данного символа
2. Точка с запятой одна и надо взять все строки до неё
3. Точка с запятой одна и надо вытянуть каждую строку отдельно, но только до данного символа

Ответы:
1. "#^[^;]+;#ms"
2. "#^[^;]+;#s"
3. "#^[^;]+;#s", а потом результат2 = explode("\n", результат1).

для третьего случая других вариантов не знаю
...
Рейтинг: 0 / 0
26.02.2013, 16:13
    #38166731
Програмёр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Регулярное выражение: Взять все строки до точки с запятой
stavelotРешил: ([^;]|\n)+;

Спасибо!

не успел ответить. пишу видимо долго
...
Рейтинг: 0 / 0
26.02.2013, 16:32
    #38166768
SmeL_md
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Регулярное выражение: Взять все строки до точки с запятой
strtok($string, ";") это если не принципиально
...
Рейтинг: 0 / 0
26.07.2013, 13:13
    #38345100
stavelot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Регулярное выражение: Взять все строки до точки с запятой
Возникла новая проблема в контексте данной:

В файле есть некоторая информация и среди нее встречается что-то вроде этого:

Код: sql
1.
2.
3.
--Database TEST
----ALTER TABLE TB1 ADD  CONSTRAINT PKTB1
---- PRIMARY KEY (ROWID);



Тоесть всегда начинается со строки
Код: sql
1.
--Database TEST

затем идет некое количество строк которое начинаются с
Код: sql
1.
----

и всегда эта конструкция заканчивается точкой с запятой.

Как собственной выделить эту инфу из файла? Как лучше читать такой файл? Как лучше разбивать?
...
Рейтинг: 0 / 0
26.07.2013, 14:28
    #38345258
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Регулярное выражение: Взять все строки до точки с запятой
stavelot,

Типа между ; токен. Вы там парсер пишите? Возьмите готовый.
...
Рейтинг: 0 / 0
26.07.2013, 15:21
    #38345384
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Регулярное выражение: Взять все строки до точки с запятой
explode('--Database TEST', $input_text)
После в цикле по элементам массива explode(';', ...)
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Регулярное выражение: Взять все строки до точки с запятой / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]