如何用另一个文件中的组(已知正则表达式)替换一个文件中的空白空间?

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 附加到的整个匹配值。

【讨论】:

以上是关于如何用另一个文件中的组(已知正则表达式)替换一个文件中的空白空间?的主要内容,如果未能解决你的问题,请参考以下文章

如何用元组列表替换列表中正则表达式匹配的模式?

如何用 sed 替换缩小的 javascript 文件中的多个值 [重复]

如何用正则表达式替换字符串

如何用正则表达式替换多个匹配项/组?

如何用正则表达式去除一个字符串里面的数字和小数点以外的字符

如何用正则表达式判断一个字符串中有数字