bash - Bash 中的类分配
问题描述
我有一个难题,我陷入了困境。问题是闲散的:我有一个从 103 到 17431 的数字列表“A”。示例:
103
104
105
......
17430
17431
现在这个列表的一部分将进入圆顶类。举个例子
Class 0
104
156
1114
11456
Class 1
1313
17431
etc
列表 A 中的相同数字在他的列表和班级中是唯一的。没有 2 个类包含列表 A 中的相同编号。我需要以 csv 格式输出列表 B,第一列是类,第二列是列表 A 中的对应编号。
最明显的方法是为列表 A 中的每个条目创建一组“if/then/else/else if”循环,但效率不高。有人可以帮助我提供更智能的解决方案吗?谢谢你。
解决方案
Perl中有这样的东西吗?
$ cat foo.txt
Class 0
104
156
1114
11456
Class 1
1313
17431
$ perl -nle '$class = $1 if /^Class (\d+)$/; print "$class,$_" if /^\d+$/' foo.txt
0,104
0,156
0,1114
0,11456
1,1313
1,17431
推荐阅读
- typescript - How to lint for Typescript compilation issues?
- firebase - 单设备推送通知(FCM 注册令牌)不起作用
- recaptcha - 多次请求后,谷歌 reCAPTCHA v3 分数会下降吗?
- sql - SQL - 缺少按值分组时的累积和
- ibm-mq - 连接到远程 MQ 队列后未加载
- java - 正则表达式:量化非捕获组
- javascript - Jquery在保持滚动位置的同时更改现有元素的顺序
- r - 如何在 R 中创建一个填充有 1 和 0 的表以显示另一个表中值的存在?
- python - 匹配包含给定子字符串列表的文件名
- ios - 某些 .xib 文件中未出现约束选项