python - 我误解了 Python 正则表达式吗?

标签 python regex python-2.7

所以,我发现

re.match("[^0-9.]","50-100")

不匹配任何内容。谁能告诉我为什么?

我确信 - 应该表示一个字符范围,而 ^ 应该否定该集合。

python 2.7.2.

最佳答案

re.match() 从字符串的开头匹配,就好像模式前面加上了 \A anchor 一样。使用 re.search()相反:

>>> re.search("[^0-9.]","50-100")
<_sre.SRE_Match object at 0x10e2a5e00>
>>> re.search("[^0-9.]","50-100").group()
'-'

关于python - 我误解了 Python 正则表达式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21162249/

相关文章:

python - 为什么 Stackdriver 日志中会间歇性地出现空行?

javascript - 关于正则表达式模式的解释

python - 安装 Anaconda 后无法安装 Python 模块

python - 在 python 中重命名 elif

python - Ubuntu下编译Cx-Freeze

python - 为什么在将 Unicode 写入 CMD 时会出现 IOErrors? (代码页 65001)

python - 设置 dtype 时 Numpy 数组上的重复值

javascript - 正则表达式帮助 JavaScript 验证和提取最后一个数字

java - 通过正则表达式删除维基文本超链接

python - HTTPS 请求 CurlAsyncHTTPClient 内存泄漏