小编jk *_*ica的帖子

用 sed 删除连字符

我有一个简单的 xml 文件,其中包含一些分页符上的连字符。输入是这样的

 ba bla bla hyphe-</page>
 <page>nated bla bla bla
Run Code Online (Sandbox Code Playgroud)

输出应该是这样的

 bla bla bla</page>
 <page>hyphenated bla bla bla
Run Code Online (Sandbox Code Playgroud)

我知道 sed 命令N,但我无法控制我的断字是出现在奇数行还是偶数行。

我可以使用 sed 执行上述 skteched 的连字符删除吗?是否有替代方法(例如使用其他 UNIX shell 命令或使用 python 或 perl)?

编辑。根据要求,我的输入文件中的一个真实示例:

[...] and vapours, upon the comparison of the air-thermo-</page>
<page>meter with the mercurial thermometer, upon the elastic [...]
Run Code Online (Sandbox Code Playgroud)

EDIT2:Alltho' 我相当随机地拿起了这个例子,它确实是一个非常讨厌的例子。在这种情况下想要的输出是

 [...] and vapours, upon the comparison of the</page>
<page>air-thermometer with the mercurial thermometer, upon the elastic [...]
Run Code Online (Sandbox Code Playgroud)

即使用空格作为单词分隔符。我的主要问题是编写一个跨越原始换行符的模式。是的,该模式应该只删除前面的连字符</page>

sed perl text-processing

5
推荐指数
1
解决办法
992
查看次数

使用 sed 撤消字母间距

我有一个包含文本的源文本文件,其中一些单词的字母间隔就像这个问题中的单词“letterspaced”(即,单词的字母之间有一个空格字符。

如何使用 sed 撤消字母间距?

像这样的模式\{[A-Za-z] \}+[A-Za-z]捕获一个字母间隔的单词,并将s/ //g空格去掉,但是如何从一行文本中提取一个字母间隔的单词并撤消字母间隔而不损害文本其余部分中的合法空格字符?

sed perl text-processing regular-expression

4
推荐指数
1
解决办法
493
查看次数

标签 统计

perl ×2

sed ×2

text-processing ×2

regular-expression ×1