Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.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重新编译(“;regex”;)。搜索返回span(0,0)match=“”;_Python_Regex_Re - Fatal编程技术网

python重新编译(“;regex”;)。搜索返回span(0,0)match=“”;

python重新编译(“;regex”;)。搜索返回span(0,0)match=“”;,python,regex,re,Python,Regex,Re,我在python中使用re库已经有一段时间了。 然而,有件事我不明白 pattern=re.compile(“[.]”) 结果=模式。搜索('abcde') 打印(结果) 上面返回: 而: pattern=re.compile('.')) 结果=模式。搜索('abcde') 打印(结果) 这将返回: Q1:在python中搜索'[.]'和'.有什么区别 Q2:我知道在'abcd'中搜索'a'会返回'span=(0,1)。但是'span=(0,0)实际上是什么意思?您使用的是哪种版本的Pyth

我在python中使用
re
库已经有一段时间了。 然而,有件事我不明白

pattern=re.compile(“[.]”)
结果=模式。搜索('abcde')
打印(结果)
上面返回:

而:

pattern=re.compile('.'))
结果=模式。搜索('abcde')
打印(结果)
这将返回:

Q1:在python中搜索
'[.]'
'.
有什么区别


Q2:我知道在
'abcd'
中搜索
'a'
会返回
'span=(0,1)
。但是
'span=(0,0)
实际上是什么意思?

您使用的是哪种版本的Python?我在3.7上,第一个为我返回
None


执行
[]
时,指定要匹配集合中的字符<代码>不再是通配符,它试图匹配字符串中的实际句点。

您使用的Python版本是什么?我在3.7上,第一个为我返回
None

执行
[]
时,指定要匹配集合中的字符<代码>不再是通配符,它试图匹配字符串中的实际句点

Q1:在python中搜索
'[.]'
'.
有什么区别

答:区别在于正则表达式的工作方式,而不是python本身

您可能知道,
(点)是一个用于匹配任何一个字符的正则表达式元字符,方括号
[]
用于匹配一个特定位置的多个不同字符。在括号内使用一个点,即
[.]
将字面上匹配字符
,在第一个示例中,由于字符串
abcde
中不存在该字符,因此无法获得匹配

Q2:我知道在
'abcd'
中搜索
'a'
会返回
'span=(0,1)
。但是
'span=(0,0)
实际上意味着什么

回答:
span()
返回可能匹配的长度

由于在第一个示例中没有得到任何匹配,因此长度设置为零,因此
span=(0,0),match='
,其中
match
是一个空字符串

Q1:在python中搜索
'[.]'
'.
有什么区别

答:区别在于正则表达式的工作方式,而不是python本身

您可能知道,
(点)是一个用于匹配任何一个字符的正则表达式元字符,方括号
[]
用于匹配一个特定位置的多个不同字符。在括号内使用一个点,即
[.]
将字面上匹配字符
,在第一个示例中,由于字符串
abcde
中不存在该字符,因此无法获得匹配

Q2:我知道在
'abcd'
中搜索
'a'
会返回
'span=(0,1)
。但是
'span=(0,0)
实际上意味着什么

回答:
span()
返回可能匹配的长度


由于在第一个示例中没有得到任何匹配,因此长度被设置为零,因此
span=(0,0),match='
其中
match
是一个空字符串。

我不确定,但可能'[.]'等同于'\',即匹配句点字符。我假设span(0,1)表示匹配在位置0,长度1处找到,而span(0,0)表示不匹配,因为字符串中没有句点。对Nicholas Hunter说:你是对的。自从我在[]中加上“.”后,它就变成了字面上的“.”像“\”。非常感谢。杰罗姆·理查德,谢谢你的编辑!我是StackOverFlow的新手,我会记住你的修复方法!我不确定,但可能“[.]”等同于“\”,即匹配句点字符。我假设span(0,1)表示匹配在位置0,长度1处找到,而span(0,0)表示不匹配,因为字符串中没有句点。对Nicholas Hunter说:你是对的。自从我在[]中加上“.”后,它就变成了字面上的“.”像“\”。非常感谢。杰罗姆·理查德,谢谢你的编辑!我是StackOverFlow的新手,我会记住你的修复方法!谢谢你回答这个问题。我认为你是对的!谢谢你回答这个问题。我认为你是对的!谢谢你第一次回答这个问题。我用的是Pithonista ios应用程序!我认为你是对的,这是应用程序中的一个bug!谢谢你第一次回答这个问题。我用的是Pithonista ios应用程序!我认为你是对的,这是应用程序中的一个bug!