为什么这个 python 正则表达式不匹配任何组?

罗伯考威尔

帮助朋友使用专有工具中的一些继承代码。

我们都不太熟悉 Python 或 Regex。

在下面的代码中,当我使用 Pythex ( http://pythex.org/ )时,degF 正则表达式匹配 2 个组,但返回 None。我究竟做错了什么?

# This Python file uses the following encoding: utf-8
import os, sys
import re

testString = "Friday: Thundery Shower, Maximum Temperature: 27°C (81°F) Minimum Temperature: 17°C (63°F)"

t = re.match("^([^:]+):\s*([^,]+)", testString)
degF = re.match("^(\d+.F\))", testString)

print t .           # _sre.SRE_Match object
print t.group(1)    # Friday
print t.group(2)    # Thundery Shower
print degF          # None

# print "Max temp " + degF.group(1)
# print "Min temp " + degF.group(2)
维克多·斯特里比尤夫

.在模式中用于匹配度数符号。但是, a.匹配单个字节,而°实际上是两个字节长:

print len('°') # => 2

因此,您可以只在您的模式中使用°而不是(或匹配零个或多个非单词字符,即),在任何地方使用并删除如果您不打算仅在字符串的开头匹配:.degF\W*r"(\d+\W+F)\)"re.search^

degF = re.findall(r"(\d+°F)\)", testString)
print(degF)                                 # => ['81\xc2\xb0F', '63\xc2\xb0F']

查看Python 演示

您可以将 unescaped)移到 right after\d+以仅匹配整数您可以更改\d\d[\d.]*匹配浮点数或整数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我的Python正则表达式在空白之间不匹配?

来自分类Dev

为什么正则表达式“ [\ A] abc”与python中的“ abc”不匹配

来自分类Dev

为什么此正则表达式在Python中不匹配?

来自分类Dev

为什么此正则表达式在python中不匹配

来自分类Dev

Python正则表达式不匹配多个组

来自分类Dev

Python-为什么这个简单的正则表达式不起作用?

来自分类Dev

为什么这个正则表达式不匹配这些字符串中的任何一个?

来自分类Dev

Python正则表达式用于数字行和可选的破折号+数字。为什么不匹配?

来自分类Dev

为什么我的Python正则表达式与Windows中的换行符不匹配\ r \ n?

来自分类Dev

为什么正则表达式不匹配这个字符串

来自分类Dev

为什么在正则表达式中这种重复的内部组不匹配?

来自分类Dev

为什么此正则表达式不匹配?

来自分类Dev

为什么此正则表达式不匹配?

来自分类Dev

正则表达式为什么不匹配文本?

来自分类Dev

为什么此正则表达式不匹配?

来自分类Dev

为什么正则表达式匹配Python 2.7中的额外空间?

来自分类Dev

为什么Python正则表达式“。* PATTERN *”与“ XXPATTERXX”匹配?

来自分类Dev

匹配时间格式的Python正则表达式可以工作-为什么?

来自分类Dev

在Python正则表达式中,为什么我不能多次匹配0或更多

来自分类Dev

为什么Python正则表达式“。* PATTERN *”与“ XXPATTERXX”匹配?

来自分类Dev

为什么python正则表达式搜索方法不能始终正确返回匹配的对象?

来自分类Dev

Python正则表达式搜索,匹配不匹配

来自分类Dev

Python正则表达式与完整捕获组不匹配

来自分类Dev

与其他表达式进行“或”运算时,Python正则表达式与组不匹配

来自分类Dev

由于字符串中有零个或多个数字,为什么'[0-9] *'在我的Python正则表达式中不匹配'abc'?

来自分类Dev

由于字符串中有零个或多个数字,为什么'[0-9] *'在我的Python正则表达式中不匹配'abc'?

来自分类Dev

Python正则表达式:提取多个匹配组

来自分类Dev

正则表达式不匹配这个或那个

来自分类Dev

正则表达式的正则表达式在Python中不匹配

Related 相关文章

  1. 1

    为什么我的Python正则表达式在空白之间不匹配?

  2. 2

    为什么正则表达式“ [\ A] abc”与python中的“ abc”不匹配

  3. 3

    为什么此正则表达式在Python中不匹配?

  4. 4

    为什么此正则表达式在python中不匹配

  5. 5

    Python正则表达式不匹配多个组

  6. 6

    Python-为什么这个简单的正则表达式不起作用?

  7. 7

    为什么这个正则表达式不匹配这些字符串中的任何一个?

  8. 8

    Python正则表达式用于数字行和可选的破折号+数字。为什么不匹配?

  9. 9

    为什么我的Python正则表达式与Windows中的换行符不匹配\ r \ n?

  10. 10

    为什么正则表达式不匹配这个字符串

  11. 11

    为什么在正则表达式中这种重复的内部组不匹配?

  12. 12

    为什么此正则表达式不匹配?

  13. 13

    为什么此正则表达式不匹配?

  14. 14

    正则表达式为什么不匹配文本?

  15. 15

    为什么此正则表达式不匹配?

  16. 16

    为什么正则表达式匹配Python 2.7中的额外空间?

  17. 17

    为什么Python正则表达式“。* PATTERN *”与“ XXPATTERXX”匹配?

  18. 18

    匹配时间格式的Python正则表达式可以工作-为什么?

  19. 19

    在Python正则表达式中,为什么我不能多次匹配0或更多

  20. 20

    为什么Python正则表达式“。* PATTERN *”与“ XXPATTERXX”匹配?

  21. 21

    为什么python正则表达式搜索方法不能始终正确返回匹配的对象?

  22. 22

    Python正则表达式搜索,匹配不匹配

  23. 23

    Python正则表达式与完整捕获组不匹配

  24. 24

    与其他表达式进行“或”运算时,Python正则表达式与组不匹配

  25. 25

    由于字符串中有零个或多个数字,为什么'[0-9] *'在我的Python正则表达式中不匹配'abc'?

  26. 26

    由于字符串中有零个或多个数字,为什么'[0-9] *'在我的Python正则表达式中不匹配'abc'?

  27. 27

    Python正则表达式:提取多个匹配组

  28. 28

    正则表达式不匹配这个或那个

  29. 29

    正则表达式的正则表达式在Python中不匹配

热门标签

归档