echo "(2abcd3rr3)" |
我希望我的最终输出为:2abcd3rr3
答案 0 :(得分:5)
您可以使用tr
命令:
echo "(2abcd3rr3)" | tr -d "()"
答案 1 :(得分:1)
对于那些简单的字符串操作,你不需要为强大的工具花费一个新的过程,比如sed / awk / grep ... bash提供的内置替换:
$ a="(foo123)"
$ echo ${a//[)(]}
foo123
答案 2 :(得分:0)
echo "(2abcd3rr3)" |grep -oP '\(\K[^)]+'
2abcd3rr3
答案 3 :(得分:0)
echo "(2abcd3rr3)" | sed $'s/[^[:alnum:]\t]//g'
答案 4 :(得分:0)
我认为这里缺少awk :)现在也在这里添加awk解决方案。
echo "(2abcd3rr3)" | awk '{gsub(/\(|\)/,"");print}'
简单地全局替换字符(和)(不在gsub函数中转义它们以避免它们的特殊含义)然后打印该行。
EDIT1: 这里也是一个perl解决方案。
echo "(2abcd3rr3)" | perl -p -i -e 's/\(|\)//g'
答案 5 :(得分:-1)
试试下面的PHP代码
str_replace(array( '(', ')' ), '', $coords);