Bash String删除特定字符

时间:2011-05-08 15:59:28

标签: php regex bash replace

我差不多完成了使用bash,但我需要做的最后一件事是在bash中对字符串进行正则表达式替换。我在这里有PHP等价物

preg_replace("/[^a-z0-9\.]/", '',$theme_name);

我需要在bash中执行相同的操作,即用任何内容替换每个非字母数字字符或点(。)。提前谢谢!

2 个答案:

答案 0 :(得分:3)

尝试以下方法:

echo "some string" | tr -d -c ".[:alnum:]"
  • tr“翻译”字符串中的字符
  • -d删除而不是翻译
  • -c表示补充
  • [:alnum:]表示“alpha numerics”。

答案 1 :(得分:0)

试试这个

回声“你好世界”| sed -e's / [reg_ex] // g'