如何通过正则表达式匹配/查找字符串

时间:2015-03-15 07:21:20

标签: regex

这是我的正则表达式:

(?is)(\b\w+\b)(?:,\s*'[^']*',\s*'[^']*'\))?\s*\bas\b\s*\bdisplay_text\b

目前它仅匹配来自以下字符串的field2

  1. SELECT DISTINCT field1 AS value, field2 AS display_text
  2. SELECT DISTINCT replace(field1, ',', '/') AS value, replace(field2, ',', '/') AS display_text
  3. 我需要一个正则表达式,它可以匹配第一个语句中的field2和来自第二个语句的replace(field2, ',', '/')

    请有人帮我创建这个正则表达式。

1 个答案:

答案 0 :(得分:1)

只需添加一个可选模式即可匹配起始replace(字符串。

(?is)\b(?:\S+\()?\b\w+\b(?:,\s*'[^']*',\s*'[^']*'\))?(?=\s*\bas\b\s*\bdisplay_text\b)

DEMO