我需要替换链接的特定部分
例如:
http://sub.somedomain.com/s/be2b46b4cb28ed64fe59d191cb600117/2013/image.jpg
Run Code Online (Sandbox Code Playgroud)
至
http://sub.somedomain.com/s/123123/2013/image.jpg
Run Code Online (Sandbox Code Playgroud)
我尝试过的:
echo "http://sub.somedomain.com/s/be2b46b4cb28ed64fe59d191cb600117/2013/image.jpg" | sed "s@/s/(.+?)/@123123@g"
Run Code Online (Sandbox Code Playgroud)
sed "s@/s/[^/]*/@/s/123123/@g"
Run Code Online (Sandbox Code Playgroud)
你的正则表达式的问题:
(和)基本正则表达式(BRE)中的常规字符(这里不需要它们)+ BRE也不是特别的sed -E,则会匹配太多,因为您没有停在下一个斜杠处