Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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_Python 3.x_Regex - Fatal编程技术网

在python中使用正则表达式获取引号中的特定数据

在python中使用正则表达式获取引号中的特定数据,python,python-3.x,regex,Python,Python 3.x,Regex,我正在尝试使用正则表达式从配置XML文件(fread)获取插件版本。 使用下面的正则表达式。但是我得到的是整个系列,我只是对版本感兴趣,即“4.3.0”。关于如何实现这一目标有什么帮助吗 (Pdb)键 'plugin=“git” (Pdb)关于findall(键+“*”,fread) ['plugin=”git@4.2.2“>\\n 2\\n\\n\\n 这可能不是最理想的正则表达式检查,但它确实有效:链接将解释捕获的工作原理。从中只需去掉@符号的字符串 如果定义了多个集合,这也允许查找多个集合

我正在尝试使用正则表达式从配置XML文件(fread)获取插件版本。 使用下面的正则表达式。但是我得到的是整个系列,我只是对版本感兴趣,即“4.3.0”。关于如何实现这一目标有什么帮助吗

(Pdb)键
'plugin=“git”
(Pdb)关于findall(键+“*”,fread)
['plugin=”git@4.2.2“>\\n 2\\n\\n\\n

这可能不是最理想的正则表达式检查,但它确实有效:链接将解释捕获的工作原理。从中只需去掉
@
符号的字符串


如果定义了多个集合,这也允许查找多个集合如果您想要更精确的检查,您可以搜索
git@
blah blah blah blah blah并返回所有这些集合,然后只需从本质上剥离前面的部分

re.findall(r“key\s*”(.*?”),fread)
re.findall(r“key\s*”[^\d']*(?”,fread)?key“plugin=”git'(Pdb)re.findall(key+“*”,fread)[“plugin=”git@4.2.2“>\\n 2\\n re.findall(r“key\s*”[^\d']*(.*?”,fread)[@WiktorStribiżew:它什么也找不到,空列表re.findall(key+”@*”,fread)['plugin=“git@']---没有获取版本详细信息您需要使用我链接的确切正则表达式,并去掉附加的额外内容,它将在该点给出它的版本。我提到,如果有许多对象,您可以添加
git@
,以进一步指定,但是如果您只有这些对象,那么您应该找到一个,而不是使用findall