是否有人知道任何支持在某些Web界面中实现的复杂布尔+通配符文本匹配的R包 - 即使用AND
OR
*
?
{{1} } / ()
运营商?例如,可以处理以下格式的查询的函数(所有示例都返回TRUE):
{}
This question问同样但没有太多兴趣。我知道s = "The quick brown fox jumps over the lazy dog"
boolean_match(s, "fox AND dog")
boolean_match(s, "fox OR bird")
boolean_match(s, "f?x")
boolean_match(s, "The quick * dog")
boolean_match(s, "lazy AND (fox OR bird)") # i.e. nested logic
boolean_match(s, "(pretty AND bird) OR (quick AND (fox OR squirrel))") # recursive
包裹 - 例如stringi
,可能与stri_detect_regex(s, c("fox","dog"))
/ all()
结合使用 - 但似乎无法处理嵌套逻辑。试图将这种复杂的查询结构转换为REGEX似乎是自杀。
任何建议都非常感谢。