我正在尝试执行以下操作:
echo "/Users/anon/Applications/Chrome Apps.localized/Spotify.app" |
sed -E 's:([^\/]*$).*:\1:'
我认为它会捕获Spotify.app
并用它替换整个字符串,但这不起作用。相反,我得到了整个字符串。
所以,我想也许我的正则表达式是错误的,所以我做了下面的测试:
echo "/Users/anon/Applications/Chrome Apps.localized/Spotify.app" |
sed 's:[^\/]*$:PWA.app:'
但我得到了预期的输出:/Users/anon/Applications/Chrome Apps.localized/PWA.app
.
所以,我不确定我在这里做错了什么。为什么分组时相同的正则表达式不匹配?