5
我正在使用parboiled編寫解析器。我將一些方法定義爲:如何將這三種方法合併爲一個
def InlineCharsBefore(sep: String)
= rule { zeroOrMore(!str(sep) ~ InlineChar) }
def InlineCharsBefore(sep1: String, sep2: String)
= rule { zeroOrMore((!str(sep1) | !str(sep2)) ~ InlineChar) }
def InlineCharsBefore(sep1: String, sep2: String, sep3: String)
= rule { zeroOrMore((!str(sep1) | !str(sep2) | !str(sep3)) ~ InlineChar) }
您可以看到它們非常相似。我想把它們合併成一個,但我不知道該怎麼做。也許這應該是:
def InlineCharsBefore(seps: String*) = rule { ??? }
這是正確的,謝謝! – Freewind