假设我有一个如下文件:
""Lorem ipsum dolor sit amet, consectetuer adipiscing elit.""
我想将其转换为德语引文:
"„Lorem ipsum dolor sit amet, consectetuer adipiscing elit.“"
我可以使用 sed 来替换双引号,但如何将前导引号对替换为最后一对引号之外的另一个字符?
最佳答案
这可能对你有用(GNU sed):
sed 's/""/\n/g;s/\n\([^\n]*\)\n/"„\1“"/g' file
将""
对转换为唯一的分隔符,例如换行符。
然后将唯一分隔符对转换为所需的结果。
注意如果这些对跨越一行,则使用 sed 选项 -z
将文件放入内存中,并使用不同的分隔符,因为换行符将不再是唯一的。
关于bash - 如何根据双引号在 Bash 中的位置将其替换为两个不同的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63153525/