public class T_token implements Lexer{
static Pattern p = Pattern.compile("\\(| \\) | a");
static Matcher d = p.matcher("(a)");
public static void main(String[] args) {
while (d.find()) {
System.out.println(d.group());
}
}
Когда я компиляции и запуска этого, выход:Pattern Сличитель не принимает скобках
run:
a
BUILD SUCCESSFUL (total time: 0 seconds)
Так вход я дал согласовани (переменная г) была строка «(а)», но это только распечатывает a, а не скобки в левом и правом скобках .. может кто-то сказать мне, как я могу это исправить?
Прочитайте Javadoc для 'Pattern' тщательно. Буквенные круглые скобки должны быть экранированы, так как небезопасные круглые скобки являются метасимволами, используемыми для группировки. Я рекомендую вам остановиться и потратить некоторое время на изучение синтаксиса регулярных выражений и грамматики. В Интернете много ресурсов, а также Javadoc. –
Какая проблема? Что вы хотите добиться? – Tunaki
вход я положил (а), и поэтому я хочу, чтобы он печатал (а), но он игнорирует скобки, я редактировал свой код, чтобы иметь \\ (и \\), но он все еще не работает. – digeridoo