RegEx для разделения строки с запятой, игнорируя запятую с пробелом
1405 просмотра
2 ответа
Мне нужно написать регулярное выражение, чтобы разделить строку запятой, но не запятой с пробелом. Я написал одно, но это не сработало.
Например:
String testString = "CONGO, THE DEMOCRATIC REPUBLIC OF THE,IRAN, ISLAMIC REPUBLIC OF,KOREA, DEMOCRATIC PEOPLE S REPUBLIC OF,NEPAL,NEW ZEALAND,SRI LANKA";
Ожидаемый результат:
- КОНГО, ДЕМОКРАТИЧЕСКАЯ РЕСПУБЛИКА
- ИРАН, ИСЛАМСКАЯ РЕСПУБЛИКА
- КОРЕЯ, ДЕМОКРАТИЧЕСКАЯ НАРОДНАЯ РЕСПУБЛИКА
- НЕПАЛ
- НОВАЯ ЗЕЛАНДИЯ
- ШРИ-ЛАНКА
Мой код:
public class TestRegEx {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
String testString = "CONGO, THE DEMOCRATIC REPUBLIC OF THE,IRAN, ISLAMIC REPUBLIC OF,KOREA, DEMOCRATIC PEOPLE S REPUBLIC OF,NEPAL,NEW ZEALAND,SRI LANKA";
String[] output = testString.split("([,][^(,\\s)])+");
for (String country : output) {
System.out.println(country);
}
}
}
ВЫХОД:
- КОНГО, ДЕМОКРАТИЧЕСКАЯ РЕСПУБЛИКА
- РАН, ИСЛАМСКАЯ РЕСПУБЛИКА
- ОРЕА, ДЕМОКРАТИЧЕСКАЯ НАРОДНАЯ РЕСПУБЛИКА
- EPAL
- EW ZEALAND
- РИ ЛАНКА
Ответы (2)
3 плюса
,(?!\s)
Объяснение:
Подберите любую запятую, за которой не следует пробел.
Смотрите это в действии здесь: http://regex101.com/r/gW3hJ8
Автор: gry Размещён: 20.10.2013 05:022 плюса
Использовать нулевую ширину, смотреть назад и смотреть вперед
testString.split("(?<! ),(?! )")
Автор: Anirudha
Размещён: 20.10.2013 04:53
Вопросы из категории :
- java В чем разница между int и Integer в Java и C #?
- java Как я могу определить IP моего маршрутизатора / шлюза в Java?
- java Каков наилучший способ проверки XML-файла по сравнению с XSD-файлом?
- java Как округлить результат целочисленного деления?
- java Преобразование списка <Integer> в список <String>
- java Почему я не могу объявить статические методы в интерфейсе?
- regex Learning Regular Expressions
- regex Regex и unicode
- regex Мое регулярное выражение слишком подходит. Как мне это остановить?
- regex Как выполнить подстановку Perl для строки, сохранив оригинал?
- regex Замена n-го экземпляра совпадения с регулярным выражением в Javascript
- regex Как заменить простые URL ссылками?
- split Как разбить строку, чтобы я мог получить доступ к элементу x?
- split Как я могу токенизировать строку в C ++?
- split Есть ли в Python функция для разбиения слова на список?
- split Разделение разделенной точкой с запятой строки в словаре в Python
- split How do I split a string with any whitespace chars as delimiters?
- split Как разбить список на куски одинакового размера?