用于单词内匹配的正则表达式



假设我有以下类似的文本:

_startOneEnd
_startTwoEnd
_startThreeEnd

我想匹配:从_start开始以结束结尾我想捕获介于两者之间的位,例如,上面变量中的一、二、三:

任何人都可以建议一个正则表达式来捕获这一点吗?

如果每行输入仅包含与您的示例类似的文本,则类似这样的东西应该有效:

/^_start(.*)End$/

^将模式定位到字符串的开头。$将其定位到字符串的末尾。括号捕获中间部分。

C#中,你可以使用这个:

(?<=_start).*(?=End)

目前尚不清楚中间的部分是否只是给出的示例。
如果是这样,请使用以下命令:

_start((One)|(Two)|(Three))End

如果没有,它可以是任何东西,试试这个:

_start(.*?)End

请注意,匹配是非贪婪的。

最新更新