【发布时间】:2021-03-12 23:04:23
【问题描述】:
我已经看过一千篇关于正则表达式和匹配引用的术语等的帖子,但似乎没有一个能满足我的需求,尽管我尽了最大的努力,但老实说,我对正则表达式非常糟糕,尤其是当你开始寻找前进/后退等,这是我认为我需要的。
我有一个文本框供用户输入搜索。它可能是一个单词,或者它可能有一些关于要搜索哪个字段的提示(冒号表示文本字段,或 > 或
blue "dark blue" author:"john smith" title:foo published>20200101
有几个因素需要考虑。首先,我必须将dark 和blue 放在一起,将john 和smith 放在一起作为一个搜索词。然后我必须将内容分开(:)并决定要搜索的字段。
作为第一步,我想得到一个如下所示的数组:
blue
"dark blue"
author:"john smith"
title:foo
published>20200101
然后第二步是确定每个术语是否有作者、标题等运算符。
如果这能变成一种表达方式那就太好了,但我当然不会指望它。
谁能帮我解决这个正则表达式模式?非常感谢!不管它值得我使用 C#/.NET 来处理任何细微差别。
【问题讨论】:
标签: regex regex-lookarounds regexp-replace