我有两个正则表达式:
find ... | xargs perl -pi -e 's/t/ /g'
find ... | xargs perl -pi -e 's/[^Sn]+$//g'
第一个将制表符更改为 4 个空格,第二个删除每行末尾的任何尾随空格。
我很想将两者结合起来,但又不想破坏某些东西。 此外,他们正在做不同的事情 - 一个是添加空格,另一个是删除空格。 有没有一种安全的方法将这两者合并在一起或保持原样?
你可以这样做:
find ... | xargs perl -l -pi -e 's/t/ /g; s/s+$//'
由于第二个find
对第一个的结果进行操作,因此在单个perl
调用中连续执行每个命令是安全的。
我会将表达式分开,但您可以通过对perl的一次调用来执行它们:
find ... | xargs perl -pi -e 's/t/ /g;' -e 's/[^Sn]+$//g;'