|
|
|
Парсинг строки. Split
|
|||
|---|---|---|---|
|
#18+
Привет! У кого какие идеи есть, для реализации следующей задачи: Есть строка Код: java 1. Как видите в строке описаны некие команды разделенные точкой с запятой (;). Тут 2 команды, который можно было бы разложить на 2 подстроки методом split. Код: java 1. Проблема в том, что во второй подстроке присутствуют тсз (;) для sql выражения которые соответственно не должны учитываться. я предполагаю, что разделение должно происходить в соответствии с уровнем. т.е. в данном примере - на 1 уровне. За 1 уровень можно считать строку не обрамленную скобками. Если парсер наткнулся на тсз (;) которые находятся внутри скобок, то разделение не производить. Попытался объяснить как мог. * тсз (;) - точкой с запятой Спасибо, с наступающим! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2017, 16:26 |
|
||
|
Парсинг строки. Split
|
|||
|---|---|---|---|
|
#18+
AndronovMVПроблема в том, что во второй подстроке присутствуют тсз (;)только для этого кейса: Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2017, 16:46 |
|
||
|
Парсинг строки. Split
|
|||
|---|---|---|---|
|
#18+
Код: java 1. только надо ещё сделать Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2017, 16:49 |
|
||
|
Парсинг строки. Split
|
|||
|---|---|---|---|
|
#18+
AndronovMVПривет! У кого какие идеи есть, для реализации следующей задачи: Есть строка Код: java 1. Тут изначально формат строки неоднозначен. Вот если был-бы escape-ing PLSQL тогда было-бы проще. Например. Код: java 1. Мы-бы не трекали сплит по внутренним строковым литералам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.01.2018, 20:55 |
|
||
|
Парсинг строки. Split
|
|||
|---|---|---|---|
|
#18+
если писать свой парсинг , то надо учитывать что символы ; ( ) могут быть внутри строки или комментариев. вопрос - а что это за синтаксис? и зачем тебе его парсить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 00:20 |
|
||
|
Парсинг строки. Split
|
|||
|---|---|---|---|
|
#18+
Привет всем, спасибо! Извиняюсь за позднее реагирование, НГ понимаете...)) mayton, Спасибо! Ну допустим я сделаю с эскейп-знаками, у тебя есть вариант как эту строку распарсить? Код: java 1. Dmitry., делаю дата-формы в свинге на основе xml где элементы биндятся с данными (датасоурсами). В данном примере balance - это датасоурс в котором есть данные и ими можно манипулировать. commander - хоть и обрабатывается как датасоурс, но им на самом деле не является. Это типа системного коммандреа который может делать какие-то действия на уровне контекста приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2018, 12:34 |
|
||
|
Парсинг строки. Split
|
|||
|---|---|---|---|
|
#18+
AndronovMV, Идеальный вариант - одна команда (вызов метода) на одну строку. Другой вариант: Код: java 1. добавить управляющий символ LF (line feed) между командами (после тчкзпт) - Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2018, 12:43 |
|
||
|
Парсинг строки. Split
|
|||
|---|---|---|---|
|
#18+
Usman, Ну одна команда это конечно исключено, разделение переходами на новую строку как вариант, но оставлю его на закуску, хочу посмотреть как с эскейпами распарсить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2018, 13:22 |
|
||
|
Парсинг строки. Split
|
|||
|---|---|---|---|
|
#18+
AndronovMVПривет всем, спасибо! Извиняюсь за позднее реагирование, НГ понимаете...)) mayton, Спасибо! Ну допустим я сделаю с эскейп-знаками, у тебя есть вариант как эту строку распарсить? Код: java 1. Все просто, мой недоверчивый друг. Считаешь четные и нечетные кавычки. Если точка с запятой стоит внутри такого литерала - то мы ее игнорируем. Она принадлежит PLSQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2018, 23:04 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39578618&tid=2122359]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
70ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 250ms |
| total: | 423ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...