如何用另一个文件中的组(已知正则表达式)替换一个文件中的空白空间?
Posted
技术标签:
【中文标题】如何用另一个文件中的组(已知正则表达式)替换一个文件中的空白空间?【英文标题】:How do i replace empty space from one file with a group (regex known) from another file? 【发布时间】:2020-01-28 01:02:13 【问题描述】:我有 Linux。我想将一个文件中的一个组复制到另一个文件的同一位置(当前被空间占用)。我的正则表达式是已知的,是[^\d ][00]\.\w*+
我没有尝试过任何东西,因为我是菜鸟,我只使用了一个数据集并运行了一个程序来获取我的正则表达式。
例子:
ATOM 1 N SER A 1 20.704 64.205 -29.116 0.00 0.00 N
和
ATOM 1 N SER A 1 20.704 64.205 -29.116 0.00 0.00 +0.229 N
如上所述,我只想对 +0.229 组进行简单的复制粘贴(每个定义的正则表达式)。我有 python 和 R 可以使用 atm,以及所有标准的 linux 包。
【问题讨论】:
请在您的问题中添加示例输入(无描述、无图像、无链接)以及该示例输入所需的输出(无评论)。 如果你知道位置,为什么你需要正则表达式?[00]
和 *+
在你的正则表达式中是什么意思?
好的。有道理。我也可以从 x 到 y 中选择并替换。但是我应该使用哪个程序呢? ?有很多变量的多个值。正则表达式很好,我只是没有上传所有文本。但是字符位置总是一样的。我会知道如何在升 C 中做到这一点,但我停止使用 Windows。
【参考方案1】:
使用 GNU sed
,如下所示:
sed -i 's/^.\70\/&+0.229/' file
^
匹配字符串的开头,.\70\
匹配任意 70 个字符。 &
是您将 +0.229
附加到的整个匹配值。
【讨论】:
以上是关于如何用另一个文件中的组(已知正则表达式)替换一个文件中的空白空间?的主要内容,如果未能解决你的问题,请参考以下文章