【发布时间】:2013-07-02 20:13:22
【问题描述】:
我正在尝试删除以 SRR 开头并以“长度 = 不同长度的不同数字”结尾的字符串。我只知道这个数字在 1 到 200 之间变化...
我不知道怎么做,也不知道哪种方法最有效。我正在处理大文件 (>10GB)。
我想对从 1 到 200 的所有值进行循环测试:
import os
import re
f2 = open(r'path')
num = 0
while num < 200:
num = num+1
ident2 = re.compile('SRR.*?%d' %num, re.DOTALL)
stuff = f2.read()
for line in f2:
ident2.sub('',stuff)
代码总体上要长得多,但是我确实在最后编写并关闭了东西。我只是想知道我是否可以使用一个将每个数字都考虑在内并删除字符串的表达式...
我们将不胜感激任何建议和建设性批评。
我正在添加文本输入的示例:
@SRR566546.970 HWUSI-EAS1673_11067_FC7070M:4:1:2299:1109 length=50TTGCCTGCCTATCATTTTAGTGCCTGTGAGGTGGAGATGTGAGGATCAGT+SRR566546.970 HWUSI-EAS1673_11067_FC7070M:4:1:2299:1109 length=50hhhhhhhhhhghhghhhhhfhhhhhfffffe`ee[`X]b[d[ed`[Y[^Y
都是一行,我有很多相似序列的重复。
【问题讨论】:
标签: python regex python-3.x