gpt4 book ai didi

.csv 格式的正则表达式和定位项

转载 作者:行者123 更新时间:2023-12-01 02:17:36 25 4
gpt4 key购买 nike

这里我需要解决的问题:

给出以下一组字母具有 .csv 文件的标题:H,A,D,E,R,T,Y,B,D
我需要处理一组字母,让它们放置在适当的位置:
例如,给出以下字母组:E,R,T,YB,D,T,Y,B,DH,A,D,E,R等等..

每个字母都有自己的固定位置
例如:“H”始终是该行的第一个字母,“A”是第二个,依此类推...
我需要用逗号分隔一组字母并保持正确的位置

Ex 为一组字母 ERTY我将有:,,,E,R,T,Y,,,而对于 HADER我会有H,A,D,E,R,,,,
我的第一次尝试是计算缺少逗号的数量。前任:

echo "E,R,T,Y" | sed 's/[^,]//g' | awk '{ print length }' | xargs -n 1 bash -c 'echo $((9-$1))' args`

现在我正在尝试将缺少的逗号添加到正确的位置。但是我卡在了这一步。

最佳答案

以下 awk 脚本应该可以工作:

s='H,A,D,E,R,T,Y,B,D'

awk -v p='HADER' -F, 'NR==1{for (i=1; i<=NF; i++)
{printf "%s%s", index(p, $i)?$i:"", (i<NF)?OFS:RS; sub($i, "", p)} print ""}' OFS=, <<<"$s"
H,A,D,E,R,,,,

awk -v p='ERTY' -F, 'NR==1{for (i=1; i<=NF; i++)
{printf "%s%s", index(p, $i)?$i:"", (i<NF)?OFS:RS; sub($i, "", p)} print ""}' OFS=, <<<"$s"
,,,E,R,T,Y,,

关于.csv 格式的正则表达式和定位项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23685439/

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