假设我有一个字符串 'gfgfdAAA1234ZZZuijjk'
我只想提取 '1234'
部分。
我只知道 AAA
之前的几个字符是什么, 在 ZZZ
之后我感兴趣的部分1234
.
与 sed
可以用字符串做这样的事情:
echo "$STRING" | sed -e "s|.*AAA\(.*\)ZZZ.*|\1|"
这会给我1234
结果。
如何在 Python 中做同样的事情?
最佳答案
使用正则表达式 - documentation供进一步引用
import re
text = 'gfgfdAAA1234ZZZuijjk'
m = re.search('AAA(.+?)ZZZ', text)
if m:
found = m.group(1)
# found: 1234
或:
import re
text = 'gfgfdAAA1234ZZZuijjk'
try:
found = re.search('AAA(.+?)ZZZ', text).group(1)
except AttributeError:
# AAA, ZZZ not found in the original string
found = '' # apply your error handling
# found: 1234
关于python - 如何提取两个标记之间的子字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4666973/