Группа режима на JavaJAVA

Программисты JAVA общаются здесь
Anonymous
Группа режима на Java

Сообщение Anonymous »

Я хочу почистить все, кроме названия класса от полностью квалифицированного имени класса. Итак, у меня может быть что -то вроде ..... < /p>

"class gqlMain.Node"
< /code>

... и я бы хотел получить .... < /p>

"Node"
< /code>

... Я уверен, что мой шаблон ... < /p>

"*.[\\.][^\\.]*"
< /code>

...myMatcherObject.matches()
< /code>

... Это всегда возвращает True, но когда я пытаюсь добавить группировки, например ... < /p>

"(.*[\\.])([^\\.]*)"
< /code>

... Я всегда получаю ошибку без совпадения. Не уверен, что происходит. < /P>

Добавлено: < /p>

Спасибо за быстрые ответы, ребята. Да, я действительно не понимаю. Мой точный код ... < /p>

public String toString() {
Pattern packagePatt = Pattern.compile("(.*[\\.])([^\\.]*)");
//
System.out.println(this.compClass.getName().toString());

Matcher packageMatch = packagePatt.matcher(this.compClass.getName().toString());

//
System.out.println(packageMatch.group(2));
return packageMatch.group(2);
}
< /code>

Первый оператор печати создает, например, строку, такую ​​как «gqlmain.node», например (я знаю, что toString () избыточная, я добавил ее из экзаперации). Второй оператор печати создает ошибку, как и оператор возврата. С помощью отладчика я вижу, что список групп для объекта Matchter остается пустым при каждом индексе. Но если я вставлю ... < /p>

if (packageMatcher.matches()) {
// print true
}
< /code>

... Я всегда получаю «true». Это действительно не имеет смысла.

Подробнее здесь: https://stackoverflow.com/questions/115 ... ng-in-java

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