Rob*_*ley 3 scala parser-combinators fastparse
该FastParse解析器组合子Scala库给你的.rep(n)"重复"的方法,让您创建一个新的解析器,试图解析givenParser n 或更多次.如果我想完全 n匹配,那么规范的方法是什么?
在我的情况下,我想解析一个40个字符的Git提交ID - 如果它超过40个字符,那不是一个提交ID,它不应该是匹配.
到目前为止,我在docs中找到的最接近的例子是:
val unicodeEscape = P( "u" ~ hexDigit ~ hexDigit ~ hexDigit ~ hexDigit )
Run Code Online (Sandbox Code Playgroud)
...通过简单的重复匹配4个字符(40个字符的提交ID详细).
这些是解析器组合器,而不是正则表达式,答案就是这样的\p{XDigit}{40}.
由于此提交已关闭该问题,因此rep支持max关键字参数.它现在还支持完全关键字参数.
hexdigit.rep(exactly = 40)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
417 次 |
| 最近记录: |