获取正则表达式匹配结果,直到第一次出现

时间:2014-11-29 13:49:50

标签: regex

我想使用正则表达式来查找第一个特定字符匹配

例如: string:

<!ENTITY GET    '<command xmlns="http://docbook.org/ns/docbook">GET</command>'>

我希望输出为匹配结果

ENTITY GET    '

目前我正在使用正则表达式

ENTITY\ [\&,\%]?.*\'

导致(不需要)

ENTITY GET    '<command xmlns="http://docbook.org/ns/docbook">GET</command>'

为了我的目标有任何改进的正则表达式吗?

编辑:还请让我知道我的正则表达式有什么问题?

PS:我的最终目标是在这种情况下使用一些正则表达式找到'GET'的实体名称。基于查找ENTITY NAME的XML标准。

1 个答案:

答案 0 :(得分:0)

这里有两个选项:

  • ?之后使用*(将贪心限定符*转换为非贪婪 minimal 限定符):.*?'

  • .替换为[^'](而不是“匹配任何字符”,“匹配任何字符'”):[^']*'

    < / LI>