Извлечение текста в регулярном выражении

54
4

У меня есть текст в формате csv, как показано ниже.

hi="hello",how="are",,,you="",thank="you"

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

hello,are,,,,you

В принципе, я хочу принимать только значения в парах ключевых значений выше и сохранять запятые, как они есть (технически для создания идеального csv)

Примечание. Я действительно ищу чисто регулярное выражение, а не java-функции.

Спасибо

спросил(а) 2017-08-07T01:01:00+03:00 2 года, 11 месяцев назад
1
Решение
54

Итак, начиная с вашего предложения:

String str = "hi=\"hello\",how=\"are\",,,you=\"\",thank=\"you\"";

Вы можете удалить все вхождения word=" и ":

str = str.replaceAll("(\\w*=\"|\")", "");  //remove word=" OR "

Другим способом, это поймает key="value" группы key="value" и заменит его на value:

str = str.replaceAll("\\w+=\"(.*?)\"", "$1");  // $1 is the value catch in ()

ответил(а) 2017-08-07T01:10:00+03:00 2 года, 11 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема