我需要在两个字符串分隔符之间使用中间内容,事实是我在整个字符串中具有三个打印的分隔符,我需要使用第二个分隔符并将其中间内容移向最后一个分隔符。
这是示例:
sh: 1: Syntax error: "&&" unexpected
正确的输出必须是:
'__SEPARATOR__'\r\nVMlinux2@ubuntu:~$ ifconfig && echo '__SEPARATOR__'\r\nens33: flags=4163<UP, 'BROADCAST', 'RUNNING', 'MULTICAST> mtu 1500inet 10.10.10.11 netmask 255.255.240.0 broadcast 10.10.10.255 __SEPARATOR__
我尝试过此正则表达式,但不起作用:
\r\nens33: flags=4163<UP, 'BROADCAST', 'RUNNING', 'MULTICAST> mtu 1500inet 10.10.10.11 netmask 255.255.240.0 broadcast 10.10.10.255
我的功能:
'__SEPARATOR__'.*?'__SEPARATOR__'((.|\r|\n|\r\n|\n\r)*)__SEPARATOR__
我做错了什么?
致谢。
答案 0 :(得分:3)
为什么不
await
答案 1 :(得分:0)
由于文本中有REGEX
,因此需要使用DOTALL
标志来编译\n
,
regex = re.compile(r"'__SEPARATOR__'.*?'__SEPARATOR__'(.*?)__SEPARATOR__", re.DOTALL)
默认情况下,.
与\n
不匹配,并且您可以简化REGEX (.*?)
,但是我认为您不需要使用{{1} }更容易。