假设我有一个字符串,'gfgfdAAA1234ZZZuijjk'而我只想提取'1234'一部分。
'gfgfdAAA1234ZZZuijjk'
'1234'
我只知道我感兴趣的部分之前AAA和之后ZZZ的几个字符1234。
AAA
ZZZ
使用sed字符串可以执行以下操作:
sed
echo "$STRING" | sed -e "s|.*AAA\(.*\)ZZZ.*|\1|"
结果,这会给我1234。
1234
如何在Python中做同样的事情?
使用正则表达式- 文档以供进一步参考
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