Форум программистов, компьютерный форум, киберфорум
PHP: RegExp
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Веб-мастер
89 / 89 / 19
Регистрация: 11.08.2011
Сообщений: 674
1

Регулярное выражение для preg_split

21.12.2012, 10:09. Показов 1709. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Надо регулярка для preg_split которая разрезается строку "консольного-кода" через ( ; ).

"Консольный-код" - это просто форма в которую вводится код и в последующих шагах розбирается на строки а там на комманды, и после команды выполняются.

Код может выглядить вот так:

_COOKIE;_SESSION
_SERVER

ShowOptions
SetOption.close.1
Каждая строка "консольного-кода" (который приведет ниже) соберается в одну строку с помощью:

PHP
1
$strings = preg_replace("/(\r\n|\n)/",";",$_POST['sourcecode']);
Вот тут и есть заморока. Мне надо чтоб ( ; ) разделялась на массив (например: explode(";",$_POST['sourcecode']). Но загвоздка что оно будет разрывать строки которые разрывать - не надо!

Ну например:
Query.guests.loginsto."qwerty;qwerty123456;Maks;blablabla123;pechyalno"
Вот заготовка:

PHP
1
$strings = preg_split("/;/iu",preg_replace("/(\r\n|\n)/",";",$_POST['sourcecode']));
Тоесть надо чтоб оно не разрывало те места где ( ; ) находится в ковычках (двойных и одинарных) и в ( [ и ] ).

Добавлено через 2 минуты
Ах да, еще чуть вперед в будущее, строки комманд разделяются точками. Желательно чтоб комманды не разбирались там где точки находятся в ковычках, скобках.

Добавлено через 26 секунд
PHP
1
2
3
4
for($i = 0; $i < count($strings); $i++)
{
    $cmds = preg_split("/./iu",$strings);
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.12.2012, 10:09
Ответы с готовыми решениями:

Регулярное выражение для роутера
Всем привет, плиз помогите разобрать вот такой урл http://autozab.com/type/?=tyagachi нужно...

Регулярное выражение для урл
Здравствуйте, уважаемые специалисты. Есть переменная $url_forum, она может принимать примерно...

Регулярное выражение для домена
определенный текст разбивается на предложения после точки но так же там может встретиться название...

Регулярное выражение для телефона
Доброго времени суток. Мне нужно регулярное выражение, чтобы перебирать операторы телефонов, к...

1
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
21.12.2012, 16:01 2
Цитата Сообщение от Maksimchikfull Посмотреть сообщение
Тоесть надо чтоб оно не разрывало те места где ( ; ) находится в ковычках (двойных и одинарных) и в ( [ и ] ).
Maksimchikfull, Это только цветочки. Простой регуляркой тут никак не обойтись. Нужен полноценный парсер с рекурсией.
Bash
1
2
echo foo \; bar \
  baz "$(echo foo "$(echo lorem \; ipsum ";" dolor)" baz)"
0
21.12.2012, 16:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.12.2012, 16:01
Помогаю со студенческими работами здесь

Регулярное выражение для ЧПУ
Здравствуйте я делаю себе блог и хочу себе урл вида mysite.ru/category/post, как мне его разбить на...

Регулярное выражение для ссылки
Здравствуйте. Со страницы нужно достать все url-ы для этого использую preg_match_all() . Но с...

Регулярное выражение для строки
Здравствуйте. Есть строка /login?nick=sanych&amp;refer=http://site.com/ и еще одна...

Регулярное выражение для email
Почему, после обработки, емайлы не становятся ссылками? &lt;?php $text = &quot;Привет от...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru