Я хочу разобрать последовательность строк в отдельных токенах. Сейчас он только разбирает первое слово.Scala parsing string sequence
class SimpleRegexParser extends RegexParsers{
def word: Parser[String] = """[a-z]+""".r ^^ { _.toString }
}
object SimpleRegexParserMain extends SimpleRegexParser{
def main(args: Array[String]) = {
println(parse(word, "johnny has a little lamb"))
}
}
Сейчас я получаю: [1,7] разобран: джонни
Как я могу разобрать всю строку на отдельные лексемы, так что это работает для переменной длины строки.
Любые указатели для этой работы приветствуются. Скажите, пожалуйста, как я могу заставить его работать в scala.
Как я могу фильтровать наши слова в верхнем регистре? Попробовал сменить определение на "" "[AZ] +" "". R, но он соответствует только первому слову для строки "Текст LABEL, который будет напечатан И будет использоваться для &&" – kromastorm
В Java этот код работает: 'public class RegexExample { государственной статической силы основных (String []) {арг указатель на строку = "ПОЛЕ текст для печати и будет использоваться для &&"; Pattern р = Pattern.compile (" [AZ] + "); Сличитель м = p.matcher (с); в то время как (m.find()) { System.out.println (m.group());} } }»как можно получить тот же результат scala? – kromastorm