gpt4 book ai didi

bash - 存储与sed中的模式匹配的整行的变量是什么?

转载 作者:行者123 更新时间:2023-12-02 05:26:54 26 4
gpt4 key购买 nike

我有一个文件,其行是以 [aiou]' 结尾的意大利语单词

gia'
giacche'
giovedi'
giu'

我想用 autohotkey 命令替换这些行,这些命令允许我用撇号写这些词并自动将它们翻译成正确的版本,这就是我想要的

::gia'::già
::giacche'::giacché
::giovedi'::giovedì
::giu'::giù

我知道我可以用 sed 完成这个,但我无法让它工作。我知道有一个变量可以存储整行,但我找不到它。如果它是 @,则以下可能有效

sed -e "s/.a'/::@::@\b\bà/" temp
sed -e "s/.i'/::@::@\b\bì/" temp
sed -e "s/.o'/::@::@\b\bò/" temp
sed -e "s/.u'/::@::@\b\bù/" temp

请注意,虽然这些行是按字母顺序排列的,但它们并不都以 g 开头,单词的最后两个字符也没有模式。

那么你知道我要找的变量是什么吗?您认为有比我正在尝试的更好的解决方案来解决我的问题吗?

最佳答案

您要查找的变量是&。也许是这样的:

sed -e "s/\(.*\)a'/::&::\1à/" temp

您还可以将所有五个元音的命令串在一起:

sed -e "s/\(.*\)a'/::&::\1à/" -e "s/\(.*\)e'/::&::\1é/" -e "s/\(.*\)i'/::&::\1ì/" -e "s/\(.*\)o'/::&::\1ò/" -e "s/\(.*\)u'/::&::\1ù/" temp

如果你有 GNU sed:

sed -re "s/(.+)a'/::&::\1à/" -e "s/(.+)e'/::&::\1é/" -e "s/(.+)i'/::&::\1ì/" -e "s/(.+)o'/::&::\1ò/" -e "s/(.+)u'/::&::\1ù/" temp

关于bash - 存储与sed中的模式匹配的整行的变量是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12955440/

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