我正在尝试使用索引标记(docbook)替换在csv文件中找到的单词列表。 CSV格式如下:
testword[ -?],testword<indexterm><primary>testword</primary></indexterm>
这会发现所有testword
出现在结尾的标点符号。这部分有效。但是,我需要将最后的标点符号包括在sed命令的替换部分中。
sed -e 's/\(.*\)/s,\1,g/' index.csv > index.sed
sed -i -f index.sed file.xml
例如This is a testword, in a test.
将替换为This is a testword,<indexterm><primary>testword</primary></indexterm> in a test.
答案 0 :(得分:0)
问题是csv文件中用于引导过程的字符串,在这里您松开了标点符号。
更换:
testword[ -?],testword<indexterm><primary>testword</primary></indexterm>
通过:
testword\([ -?]\),testword\1<indexterm><primary>testword</primary></indexterm>
已经解决了您的问题。