我学会了如何分别去除前缀和后缀,具体操作如下:
p="prefix-foo-bar-suffix"
echo ${p#prefix} # -foo-bar-suffix
echo ${p%suffix} # prefix-foo-bar-
我正在尝试根据上面的示例一起删除它们。我尝试了下面的代码,但它不起作用。
echo ${p#prefix%suffix} # prefix-foo-bar-suffix, looks like it treats "prefix%suffix" as a whole thing
echo ${{p#prefix}%suffix} # error, bad substitution
顺便说一下,我知道使用正则表达式很容易让它工作,但我想知道是否有可能构建一个只基于#和%技巧的解决方案。此外,虽然某些人建议使用eval可能会使它变得非常容易,但我倾向于在这里避免使用它。