gpt4 book ai didi

regex - sed,在第一个数字之前插入空格,但前提是不存在空格

转载 作者:行者123 更新时间:2023-12-01 21:22:15 24 4
gpt4 key购买 nike

遗憾的是,这需要通过 sed 进行,据我所知,反向匹配不起作用。

我有一个不正确的字符串,我需要在其中插入一个空格,这个不正确的字符串可以采用以下格式:

>=5.0.0 <= 7.0.0
>5.0.0 <= 7.0.0
=5.0.0 <= 7.0.0

我需要在第一个数字之前插入一个空格,并且只有在不存在空格的情况下(我们有数百个正确的字符串,所以双空格会破坏它们)。
期望的输出是

>= 5.0.0 <= 7.0.0
> 5.0.0 <= 7.0.0
= 5.0.0 <= 7.0.0

我尝试过分组,但还不太明白:

echo $testString |sed 's/\(\S\)\w/\1 &/'
>= =5.0.0 < 7.0.0

最佳答案

如果您对 awk 没问题,请尝试使用所示示例进行编写和测试。

awk '!/^[>]?[=]? [0-9]/{sub(/[>]?[=]?/,"&"OFS)} 1' Input_file

awk '/^[>]?[=]?[0-9]/{sub(/[>]?[=]?/,"&"OFS)} 1' Input_file

OR 与 sed 使用相同的正则表达式:

sed -E '/^[>]?[=]?[0-9]/s/^[>]?[=]?/& /' Input_file

关于regex - sed,在第一个数字之前插入空格,但前提是不存在空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63707693/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com