【发布时间】:2015-05-20 16:58:36
【问题描述】:
我正在尝试匹配包含字符串ACTGGGTAAACTA 的文件中的行。如果
我愿意
grep "ACTGGGTAAACTA" file
它给了我完全匹配的行。有没有办法允许一定数量的不匹配(替换、插入或删除)?比如我在找序列
最多允许 3 个替换,如“AGTGGGTAACCAA”等。
插入/删除(具有部分匹配,如“ACTGGGAAATAAACTA”或“ACTAACTA”)
【问题讨论】:
-
您的意思是“查找 ACTGGGTAAACTA 或最多可更改 3 个字母的序列”吗?
-
正则表达式不是模糊匹配工具。您必须非常准确地了解您正在寻找的内容。您可以明确声明某些字符可能会丢失(例如,
ACTGGGTA{1,3}CTA可以匹配ACTGGGTACTA、ACTGGGTAACTA和ACTGGGTAAACTA),但是您的正则表达式越“模糊”,不受欢迎的匹配就越多你最终会得到。
标签: regex shell pattern-matching