Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python正则表达式组澄清_Python_Regex - Fatal编程技术网

Python正则表达式组澄清

Python正则表达式组澄清,python,regex,Python,Regex,我没有python方面的经验,很少使用正则表达式,我正试图弄清楚 python正则表达式将从http响应头集Cookie条目返回: REGEX_COOKIE = '([A-Z]+=[^;]+;)' resp = urllib2.urlopen(req) re.search(REGEX_COOKIE, resp.info()['Set-Cookie']).group(1) 能否给出一个设置Cookie值的简单示例,并解释它在+返回时匹配什么 A是一个名称-值对列表,用分号分隔: HTTP/1.1

我没有python方面的经验,很少使用正则表达式,我正试图弄清楚 python正则表达式将从http响应头集Cookie条目返回:

REGEX_COOKIE = '([A-Z]+=[^;]+;)'
resp = urllib2.urlopen(req)
re.search(REGEX_COOKIE, resp.info()['Set-Cookie']).group(1)
能否给出一个设置Cookie值的简单示例,并解释它在+返回时匹配什么

A是一个名称-值对列表,用分号分隔:

HTTP/1.1 200 OK Content-type: text/html Set-Cookie: RMID=732423sdfs73242; expires=Fri, 31-Dec-2010 23:59:59 GMT (content of page) HTTP/1.1200ok 内容类型:text/html 设置Cookie:RMID=732423sdfs73242;expires=Fri,2010年12月31日23:59:59 GMT (第页内容) 正则表达式匹配名称、等号和第一个分号之前的值—在本例中:
RMID=732423sdfs73242。换句话说,它读取名字-值对。请注意,如果只有一个名称-值对后面没有分号,则它将不起作用。

a是名称-值对的列表,用分号分隔:

HTTP/1.1 200 OK Content-type: text/html Set-Cookie: RMID=732423sdfs73242; expires=Fri, 31-Dec-2010 23:59:59 GMT (content of page) HTTP/1.1200ok 内容类型:text/html 设置Cookie:RMID=732423sdfs73242;expires=Fri,2010年12月31日23:59:59 GMT (第页内容)
正则表达式匹配名称、等号和第一个分号之前的值—在本例中:
RMID=732423sdfs73242。换句话说,它读取名字-值对。请注意,如果只有一个名称-值对且后面没有分号,则此选项无效。

谢谢,请给出明确的解释。如果我和你在一起,对于像这个集合Cookie这样的集合Cookie字符串:RMID=732423sdfs73242;路径=/;expires=Fri,2010年12月31日23:59:59 GMT,第(2)组将以RMID=732423sdfs73242进行比赛;路径=/@nkr1pt:事实上,它只会找到第一个。要查找所有名称-值对,您可以使用re.findall,甚至更简单:不用担心正则表达式,只需使用str.split(“;”)。谢谢,解释清楚。如果我和你在一起,对于像这个集合Cookie这样的集合Cookie字符串:RMID=732423sdfs73242;路径=/;expires=Fri,2010年12月31日23:59:59 GMT,第(2)组将以RMID=732423sdfs73242进行比赛;路径=/@nkr1pt:事实上,它只会找到第一个。要查找所有的名称-值对,可以使用re.findall,甚至更简单:不用担心正则表达式,只需使用str.split(“;”)。