gpt4 book ai didi

regex - 有没有办法嵌套 sed 替换?

转载 作者:行者123 更新时间:2023-12-04 21:50:00 25 4
gpt4 key购买 nike

我想更改文件中每一行的格式,并在其中一个匹配的组上运行另一个替换。

举个例子,我可以有一个简单的三列 CSV 文件(没有转义),我想把它放在另一种格式中。

sed -r 's/^([a-z]+),([a-z]+),([a-z]+)$/\1: \3 (\2)'
# would turn "comma,separated,values"
# into "comma: values (separated)"

但是,我还想从第二列中删除所有元音,即运行 s/[aeiou]//g\2 .

这个嵌套替换问题有没有很好的解决方案?请假设两个替换都很复杂,这只是一个例子。

我的 sed 不是 GNU sed 4.0 版。

最佳答案

我认为你最好使用 awk对于这一点,可以更轻松地操作字段。

echo "gaviidae,gruidae,picidae" | awk -F "," '{gsub(/[aeiou]/, "", $2); printf("%s: %s (%s)\n", $1, $3, $2)}'

输出:
gaviidae: picidae (grd)

关于regex - 有没有办法嵌套 sed 替换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6624745/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com