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

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Регулярное выражение для сложной строки с разделителями с несколькими шаблонами анализа

Сообщение Anonymous »

У меня есть следующая строка:

Код: Выделить всё

def str='prop1: value1, prop2: value2;value3, prop3:"test:1234, test1:23;45, test2:34;34", prop4: "test1:66;77, 888"'
Я хочу получить следующий список пар

Код: Выделить всё

prop1: value1
prop2: value2;value3
prop3: test:1234, test1:23;45, test4:34;34
prop4: test, 66;77, 888
Я полагаю, что если я смогу сначала проанализировать и удалить реквизиты 3 и 4, то я смогу просто разделить запятую для остальной части строки. но возникла проблема с поиском соответствия для реквизита 4.
Ниже приведены код и регулярное выражение, которые я пробовал до сих пор. В коде закомментированы различные регулярные выражения, которые я пробовал, но не смог извлечь последнее свойство4

Код: Выделить всё

  def str='prop1: value1, prop2: value2;value3, prop3:"test:1234, test1:23;45, test4:34;34", prop4: "test, 66;77, 888"'
//def regex = /(\w+):"(.*)"[,\s$]/
//def regex = /(\w+):"(.*)"[,|\s|$]/
def regex = /(\w+):"(.*)"[,\s]|$/
def m = (str =~ regex)
(0..

Подробнее здесь: [url]https://stackoverflow.com/questions/77347365/regex-for-complex-delimited-string-with-multiple-parse-patterns[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»