正则表达式:找到最后一次出现的模式
问题描述:
我正在试图找到一个正则表达式,该正则表达式将匹配最后一次出现的特定语言标记,之后没有其他语言标记。正则表达式:找到最后一次出现的模式
- 特定语言标签:
_en
- 语言标签:
_[a-z]{2}
例如,图案应该匹配所有的以下内容:
title_en
components_en.video.title
components_en.video.title_en
components_en.video.the_end
components_es.video.title_en
此外,模式不应该跟匹配G:
title_es
components_es.video.title
components_en.video.title_es
components_es.video.the_end
答
这应做到:
_en(\.|$)(?!.*_[a-z]{2}(\.|$))
这里的a fiddle显示它如何执行你的测试用例。
如果要匹配整个字符串,请在表达式前加上^.*
,后缀为.*$
。
^.*_en(\.|$)(?!.*_[a-z]{2}(\.|$)).*$
结果示于this fiddle。
什么是你的味道?(你正在使用的语言) –
elasticsearch(java) – clud