首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于分号的数据分割和唯一ID的提取

基于分号的数据分割和唯一ID的提取
EN

Ask Ubuntu用户
提问于 2018-09-05 04:40:56
回答 1查看 29关注 0票数 0

我有这样的档案:

代码语言:javascript
复制
26. ZINC19693599
27. ZINC19693598
28. AKOS032468089; ZINC575619353; F6561-5795 ...
29. MolPort-039-321-788; ZINC46759513; AKOS030658283
30. MolPort-039-315-229; AKOS030665655; ZINC108730091
31. MolPort-039-285-275; ZINC253426468; Z1983921961 ...
32. MolPort-039-260-085; ZINC293540464; Z2220694059 ...
33. MolPort-039-256-805; ZINC240871409; Z1978986809 ...
36. MolPort-042-618-243; AKOS026704656; ZINC575617472 ...
37. MolPort-042-617-677; AKOS026704258; ZINC575615033 ...
39. CHEMBL3446533; AKOS030350184; ZINC257247314
40. ZINC257240872
41. AKOS030286562; ZINC257302698
42. AKOS030286561; ZINC257339418
43. AKOS030262257; ZINC257197602
44. MolPort-038-977-160; ZINC225411464; Z1945656395 ...
45. MolPort-038-969-994; AKOS030642012; ZINC191511001
46. MolPort-035-834-516; ZINC170605844; Z366648930 ...
47. MolPort-035-834-509; ZINC170605825; Z366645258 ...
48. ZINC170591573
49. ZINC170591572
50. MolPort-038-956-852; ZINC135661620; Z1443333613 ...
51. MolPort-038-958-774; ZINC119501018; Z1542315705 ...
52. AKOS030442141; ZINC100744266; ZINC257344663
53. AKOS030406331; ZINC100216414; ZINC257287859
54. AKOS030389515; ZINC100159328; ZINC257263109 ...
55. AKOS030389402; ZINC100158990; ZINC257223925
56. AKOS030389401; ZINC100158986; ZINC257331241
57. ZINC97137184
58. ZINC97137179
59. ZINC96485930

每一行都应该有ZINC ID (肯定以ZINC开头,但ID的长度可能不一样)。我试图从每一行grep这个以ZINC开头的ID。

在我的结果中,我希望有这样的东西:

代码语言:javascript
复制
ZINC19693599
ZINC19693598
ZINC575619353
ZINC46759513
ZINC108730091
ZINC253426468
ZINC240871409
..etc

有人能帮上忙吗?

EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2018-09-05 05:17:00

首先grep然后sort -u删除重复项,因此根据您的文件格式,您可以这样做

代码语言:javascript
复制
grep -o 'ZINC[^;]*' infile |sort -u

ZINC[^;]*正在匹配ZINC之后的模式,直到;看到并排除了;本身。

票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1072220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档