代码之家  ›  专栏  ›  技术社区  ›  cyborg

将基本搜索字符串转换为正则表达式

  •  2
  • cyborg  · 技术社区  · 15 年前

    假设我有一个搜索字符串,比如:

    “你好[名字],今天好吗?我很好。”

    如果我要使用正则表达式模式来搜索文本,我必须将其转换为以下内容(假设“\”是对单个空格的有效正则表达式搜索):

    在我开始写一个函数来实现这一点之前,有人知道有什么东西已经完成了这种转换吗?(Eclipse做了一些类似的事情;它在搜索之前将所有搜索转换为正则表达式,即使您没有将搜索模式设置为regex)。

    在本例中,我的目标是C#,但可以随意添加其他语言,因为其他人可能对Java、Python等的类似功能感兴趣。

    1 回复  |  直到 15 年前
        1
  •  5
  •   stevemegson    15 年前

    Regex.Escape(string) 将返回与提供的文本字符串匹配的正则表达式模式。

    具体来说,它逃逸了 \*+?|{[()^$.#