Java - Exception Match Exception regex GroupJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Java - Exception Match Exception regex Group

Сообщение Anonymous »

Я пытаюсь создать несколько шаблонов в файле XML, и я хочу иметь аргументы со следующим синтаксисом: < /p>

{%test%}< /code> где «тест» - это имя аргумента. < /p>

private static final Pattern _hasArgPattern = Pattern.compile( "\\{%[a-zA-Z0-9_-]*%\\}" );

private static final Pattern _getArgNamePattern = Pattern.compile( "\\{%([a-zA-Z0-9_-]*)%\\}" );

private static final Pattern _replaceArgPattern = Pattern.compile( "(\\{%[a-zA-Z0-9_-]*%\\})" );
< /code>

Я сначала проверяю, присутствует ли аргумент в строке, затем я пытаюсь извлечь имя аргмемента, а затем я заменяю весь шаблон на значение аргументов, содержащиеся в Hashmap: < /p>

if( _hasArgPattern.matcher( attr ).matches() )
{
String argName = _getArgNamePattern.matcher( attr ).group( 1 );

if( ! args.containsKey( argName ) )
{
throw new Exception( "Argument \"" + argName + "\" not found." );
}

return _replaceArgPattern.matcher( attr ).replaceFirst( args.get( argName ) );
}
else
{
return attr;
}
< /code>

Я протестировал свой reg exps на онлайн -тестере REG Exp, и они, кажется, работают как намеренный.
Но по какой -то причине я получаю исключение при попытке извлечь имя аргумента с использованием Group (): < /p>

java.lang.IllegalStateException: No successful match so far
< /code>

Что это может быть связано? Спасибо :)

Подробнее здесь: https://stackoverflow.com/questions/273 ... -exception
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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