В Java regex, как я могу заставить класс символов, например, [a-z] соответствовать - знак "минус"?

На самом деле поток и очередь отправки - красные сельди. Проблема в том, что self.tryAgainButton является ссылкой на кнопку, которой нет в интерфейсе с самого начала. Это где-то в мысленном пространстве. У него нет супервизии и не видно. Поэтому вы звоните removeFromSuperview и ничего не происходит.

Вы добавили кнопку в интерфейс (reconnectButton). [Вы сделали это совершенно неправильно, но что не так с тем, как вы это сделали, это будет предметом другого вопроса!] Но вы никогда не устанавливали self.tryAgainButton на reconnectButton, поэтому они не являются одинаковыми кнопками. У вас есть две кнопки , одна в интерфейсе (reconnectButton) и одна в пространстве мысли (self.tryAgainButton).

18
задан daveb 30 September 2008 в 17:08
поделиться

4 ответа

Не помещайте знак "минус" между символами.

"[a-z-]"
37
ответ дан 30 November 2019 в 06:07
поделиться

Я перефразировал бы, "не помещают его между символами" немного более конкретно.

Делают тире первым или последним знаком в классе символов. Например", [-a-z1-9]" соответствует символам нижнего регистра, цифрам или тире.

4
ответ дан 30 November 2019 в 06:07
поделиться

Выйдите из знака "минус" [a-z\-]

7
ответ дан 30 November 2019 в 06:07
поделиться

Это работает на меня

   Pattern p = Pattern.compile("^[a-z\\-]+$");
   String line = "abc-def";
   Matcher matcher = p.matcher(line);
   System.out.println(matcher.matches());  // true
3
ответ дан 30 November 2019 в 06:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: