我正在创建一个搜索系统,并希望支持多种输入术语,例如:
@bob "xxx",'yyy', "freak'd out" 'bob two' "" can I #handle/children #nope @ok(42)我想要一个正则表达式来获取平衡引号的所有内部(而不是绊倒在
更糟糕的是,我想支持常见的搜索操作符,它们可以以单词或引语作为前缀,如下所示:
+@bob "xxx",'yyy', "freak'd out" -'bob two' "" can I #handle/children -#nope @ok(42)如果是-“bob 2”,我想和-bob two一起登陆。
我还想忽略空的""。
发布于 2022-07-23 20:48:16
我找到了this answer to a simpler version of this question,并在它的基础上登陆:
/\s([\-\+\!]?)([\-\+\!]?)(?:([\'"])(.+?)\3)|([\-\+\!]?[\w\-#@\/\(\)]+)/g你可以在这里试试:https://regex101.com/r/8xxydh/1
这需要一些后置处理才能得到我所需要的,但它只是简单地连接匹配组
(结果不会同时得到4和5。)
这样做,我得到了以下列表:
https://stackoverflow.com/questions/73094096
复制相似问题