Regex python正则表达式如何避免匹配多个分号?

Regex python正则表达式如何避免匹配多个分号?,regex,logstash,Regex,Logstash,我将要编写一个正则表达式来提取子字符串。字符串为: ASP.NET_SessionId=frfcjcarie4dhxouz5yklwu+BIGipServercapitaliq ssl=3617221783.36895.0000+OBSSOCOKIE=wkyQfn2Cyx2%2f7kSj4zBB886WaLs92Ord9FSf64c%2BYHFOBWGEP4F3UMORDJ051SUQWRXAKEWBTYVKRYJUGH2YNZTAJ2%2BNP8ASLIT9QPKVKTEAZKL3JNIV8M

我将要编写一个正则表达式来提取子字符串。字符串为:

ASP.NET_SessionId=frfcjcarie4dhxouz5yklwu+BIGipServercapitaliq ssl=3617221783.36895.0000+OBSSOCOKIE=wkyQfn2Cyx2%2f7kSj4zBB886WaLs92Ord9FSf64c%2BYHFOBWGEP4F3UMORDJ051SUQWRXAKEWBTYVKRYJUGH2YNZTAJ2%2BNP8ASLIT9QPKVKTEAZKL3JNIV8MYWFSM%2Ftm1%2bGTk9Oa%2CNA0HMY847QK27%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZIV%2BZI7BZI7B+machineIdCookie=866873600+userLoggedIn=jga;SDGJEFDFS

我想提取一个子串,以
ObSSOCookie=
并在
userLoggedIn
之前结束

我设置了我的正则表达式模式

pattern = "ObSSOCookie=.*;" 
但是它会一直提取到最后一个分号(包括
+machineIdCookie=866873600
),而不是我想要的第一个分号


有没有办法提取到第一个分号?我不能只使用
split
by”;“因为这个正则表达式实际上是在
Logstash
配置文件中使用的,在那里没有办法使用python风格的编码…

为什么不抓取下一个
之外的任何东西呢像这样()


你想让你的正则表达式不贪婪

而不是用这个

*  - zero or more
用这个

*? - zero or more (non-greedy)
这是您的表达式()

这是一种通用技术,在中也有描述

*? - zero or more (non-greedy)
ObSSOCookie=(.*?;)