Я начинающий программист в Java и регулярных выражениях, и я хотел создать простую программу wordcount.Как сокращенный синтаксис Regex отличается от длинной версии?
У меня были некоторые проблемы со вторым примером ниже, и я переключился на первый, и он сработал. Второй продолжал повторяться одно и то же слово (бесконечно, так что остальная часть программы не закончилась), но первая работала правильно и учитывала все слова. Я не знаю почему. Я думал, что они должны быть одинаковыми.
Учитывая, что line
является строка считывается из другого файла, который будет wordcounted, word
является Pattern
для разделения слов, и wordList
является List<String>
, который содержит все слова, то как следующий код:
Matcher match = word.matcher(line);
while(match.find())
wordList.add(match.group());
... отличается от этого кода?
while((Matcher match = word.matcher(line)).find())
wordList.add(match.group());
Спасибо за любую помощь.
(Кроме того, вы можете мне помочь с названием? Я не знаю, что называть «стенограмму» код.)
полностью имеет смысл. Спасибо! Я буду помнить об этом. –
@Jon Добро пожаловать :) – Pshemo
вид не по теме, но есть ли имя для объединения деклараций 'Matcher' и операторов while? While? это ново для меня, и я думаю, что это круто, но я не знаю, как это назвать. –