У меня есть это регулярное выражение D+U
.
Он должен совпадать один раз для следующей строки UDDDUDUU
, но с Java он совпадает три раза. Соответствует DDDU
DU
. Я использую https://regex101.com/ для проверки своего регулярного выражения, и оно должно совпадать только один раз, DDDU
.
Я пытаюсь решить эту проблему, =AT3UrOLAOixN0_fTXXw7i6Uff8CgJv4D5fSMPGri3b239xAMjWIXTesyycK0TSfity6NfYBLsJaL1sy5boqIZ4oBGBEA-Q5_RKPUgYS_MwrQ3_iHBBi2CaR-P5Gs1dxTj_5jr25ONg" rel="nofollow noreferrer">Hacker Я также пытаюсь использовать шаблоны, потому что хочу попрактиковаться в использовании этих классов.
Что именно я делаю неправильно?
Это мой код:
static int match(int n, String s) {
Matcher matcher = Pattern.compile("D+U").matcher(s);
int count = 0;
int i = 0;
while (matcher.find(i)) {
count++;
i = matcher.end() + 1;
}
return count;
}
[UD]+
- person Wiktor Stribiżew   schedule 16.09.2018