正则表达式 findall 根据开始和结束字符检索子字符串

标签 regex python-2.7

我有以下字符串:

6[Sup. 1e+02]

我正在尝试检索 1e+02 的子字符串。变量首先引用上面指定的字符串。以下是我尝试过的。

re.findall(' \d*]', first)

最佳答案

您需要使用以下正则表达式:

\b\d+e\+\d+\b

解释:

  • \b - 单词边界
  • \d+ - 数字,1 或更多
  • e - 文字 e
  • \+ - 文字 +
  • \d+ - 数字,1 或更多
  • \b - 单词边界

参见 demo

示例代码:

import re
p = re.compile(ur'\b\d+e\+\d+\b')
test_str = u"6[Sup. 1e+02]"
re.findall(p, test_str)

参见 IDEONE demo

关于正则表达式 findall 根据开始和结束字符检索子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29929840/

相关文章:

python-2.7 - AttributeError: 'dict' 迭代集合字典时对象没有属性 (...)

python - 用于 self 迭代 : what's in the list?

javascript - 如何将 jquery attr 值转换为字符串对象以将其用作正则表达式?

java - 在java中将字符串更改为驼峰式,同时包含下划线和数字

java - 检查特殊字符 "$"的正则表达式

python-2.7 - 使用Python和Mechanize提交网站html中的数据

javascript - 正则表达式匹配内容直到多字符字符串

正则表达式 - 用相同数量的另一个字符替换一个字符的序列

Python 在不应该的时候附加到列表

python - 线性判别分析后仅绘制了 2 个簇,而不是 3 个