gpt4 book ai didi

regex - 模式匹配并使用 sed 在文本文件中的行尾或行首添加行

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:22:42 25 4
gpt4 key购买 nike

我有一个文本文件,其中包含:

First link https://cdn.shopify.com/s/files/1/0151/0741/products/2c60070615ceaa44c934ca876fe4ccc0_f304e840-bb1d-4bcf-a993-d966c0b99ae3.jpeg?v=1452842355 
Second link https://cdn.shopify.com/s/files/1/0151/0741/products/549542c704da78a0e5208b9f8c2cd26e.jpeg?v=1452842263
Third link https://cdn.shopify.com/s/files/1/0151/0741/products/2c60070615ceaa44c934ca876fe4ccc0_70e7e6b9-bedd-40a7-b322-542facf94c05.jpeg?v=1452842230
Fourth link https://cdn.shopify.com/s/files/1/0151/0741/products/2c60070615ceaa44c934ca876fe4ccc0_5485fd04-c852-4fd7-b142-92595329568a.jpeg?v=1452841841
lst link https://cdn.shopify.com/s/files/1/0151/0741/products/2c60070615ceaa44c934ca876fe4ccc0_fb613b45-fbbb-4b6d-b9c0-45d7f069879e.jpeg?v=1452841831

我想匹配最后一个 url 并使用 sed 在行的开头或结尾附加一个词。

但它不起作用。帮助

命令的输出给出了这个错误。

$sed -e 's_https://cdn.shopify.com/s/files/1/0151/0741/products/2c60070615ceaa44c934ca876fe4ccc0_f304e840-bb1d-4bcf-a993-d966c0b99ae3.jpeg\?v=1452842355 .*_& NOTFOUND_'
sed: -e expression #1, char 148: unknown option to `s'

最佳答案

不幸的是,sed 不是完成此任务的最佳工具。如果不事先进行所有转义,就无法在 sed 模式中传递普通的非正则表达式字符串。

最好为此使用 awk:

awk 'index($0, "https://cdn.shopify.com/s/files/1/0151/0741/products/2c60070615ceaa44c934ca876fe4ccc0_fb613b45-fbbb-4b6d-b9c0-45d7f069879e.jpeg?v=1452841831"){
$0 = $0 " NOTFOUND"} 1' file

index 函数只是在记录中搜索给定 URL 的存在,如果找到,则在末尾附加 "NOTFOUND 字符串。

等效的工作 sed 是这样的:

sed 's~https://cdn\.shopify\.com/s/files/1/0151/0741/products/2c60070615ceaa44c934ca876fe4ccc0_fb613b45-fbbb-4b6d-b9c0-45d7f069879e\.jpeg?v=1452841831.*~& NOTFOUND~' file

如您所见,它要求您转义所有 DOT 并选择输入字符串中不存在的正则表达式定界符。

关于regex - 模式匹配并使用 sed 在文本文件中的行尾或行首添加行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34816664/

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