Как получить правильную подстроку с помощью Regex

1

Как я могу получить fr и en из ["fr", "en"] с помощью regex? Я попытался использовать split("[\\W]+") но он дает мне 3 элемента ("", "fr" и "en").

Как я могу это сделать, не получив эту первую пустую строку, а просто получить fr и en?

Теги:

2 ответа

1

Вместо split вы должны использовать это регулярное выражение для соответствия требуемым частям:

(?<=")\w+(?=")

Демо-версия RegEx

В Java:

String str = "[\"fr\", \"en\"]";
Pattern p = Pattern.compile("(?<=\")\\w+(?=\")");
Matcher = p.matcher(str);
while (m.find())
    System.out.println(m.group());

Вывод:

fr
en
  • 0
    Спасибо, сэр, но это не работает!
  • 0
    я обновил ответ с полным кодом Java для вашей помощи.
Показать ещё 6 комментариев
1
(?<=")[^",]+(?=")

Просто выполните матч вместо split.See demo.

https://regex101.com/r/pT4tM5/8

  • 0
    Спасибо, сэр, но это не работает!
  • 0
    @BachletTansime, как вы используете его .... он работает, как вы можете проверить в демо
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню