python - 比较运算符的正则表达式

标签 python regex

我很抱歉不得不问这个问题,我怀疑这对于任何人来说都是非常简单的,即使是对正则表达式有点熟悉的人。我有一个始终采用以下形式的字符串:comparison_operator integer :

例如'>2:''<=0:'

我想将比较运算符和数字分开,但我无法找到如何执行此操作的明确解释。非常感谢任何帮助。我正在使用 Python 的 're' 模块,尽管据我了解,正则表达式或多或少与语言无关。

最佳答案

您可以使用[<>]=?|==匹配运算符,和 \d+来匹配号码。将每个模式包含在 capture group 中将允许您访问匹配的值:

>>> re.match(r'([<>]=?|==)(\d+)', '>2:').groups()
('>', '2')
>>> re.match(r'([<>]=?|==)(\d+)', '<=0:').groups()
('<=', '0')

您还可以将匹配的组解压缩为单独的变量:

match = re.match(r'([<>]=?|==)(\d+)', your_input)
operator, number = match.groups()

关于python - 比较运算符的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52620953/

相关文章:

python - 按多个列值过滤 Pandas 数据框行

javascript - 将 html 标签放在字符串中的匹配项周围

java-匹配字符串中的正则表达式模式(列出匹配和不匹配的部分)

python - 非捕获组在替换输出中不可用

java - 字符串替换正则表达式仅在 [] 之外使用标记

python - 为什么 SQLAlchemy 建议使用内置的 `id` 作为列名?

Python Pandas 数据帧 : Compare rows two by two recusively.

python - 来自 Pusher/Beams 的推送通知不会显示在模拟器中

python - 矩阵的xy坐标列表

javascript - 如何在隐藏时从 ASP.NET 验证中排除控件(显示 :none;)?