sed from csv包括搜索词的最后一个字符

时间:2018-09-10 13:29:59

标签: sed docbook

我正在尝试使用索引标记(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.

1 个答案:

答案 0 :(得分:0)

问题是csv文件中用于引导过程的字符串,在这里您松开了标点符号。 更换: testword[ -?],testword<indexterm><primary>testword</primary></indexterm> 通过: testword\([ -?]\),testword\1<indexterm><primary>testword</primary></indexterm>

已经解决了您的问题。