Кириллица в регулярных выражениях java
Есть строка
"
Login;Name;Email
ivanov;Ivan Ivanov;[email protected]
петров;Петр Петров;[email protected]
bush;Джордж Буш;[email protected]
obama;Barack Obama;[email protected]
"
Нужно написать regex для того, чтобы привести данную строку к виду
"
ivanov: [email protected]
петров: [email protected]
и т.д.
"
Мое решение:
StringBuilder answerLine = new StringBuilder("");
Pattern pat = Pattern.compile("([\\p{L}0-9]+;[\\p{L}0-9 ]+;[\\p{L}@.0-9]+)",Pattern.UNICODE_CHARACTER_CLASS);
Matcher match = pat.matcher(input);
boolean flag = false;
while(match.find()) {
if(flag==false) { //исключаем "Login;Name;Email"
flag=true;
continue;
}
String [] cutedLine = match.group().split(";");
for (int j = 0; j < 3; j++) {
if (j != 1) {
answerLine.append(cutedLine[j]);
}
if (j == 0) {
answerLine.append(": ");
}
}
answerLine.append("\n");
}
return answerLine.toString();
И это решение отлично работает, но с ivanov и obama, так как они без кириллицы. Как сделать кириллицу видимой для регулярки? Кодировка файла UTF-8. P.S. input - заданая строка