正则表达式:匹配重复序列

2024-06-02 17:48:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试构建一个正则表达式,它将匹配2个字符的重复DNA序列。这些字符可以相同。在

正则表达式应至少匹配2个字符的重复序列至少3次,下面是一些示例:

正则表达式应匹配于:

  • 共济失调
  • 加加加
  • 中交建

并且不应匹配:

  • ACAC公司
  • ACGTACGT公司

到目前为止,我想出了以下正则表达式:

[ACGT]{2}

这将捕获正好由两个字符(A、C、G或T)组成的任何序列。现在我想至少重复这个模式三次,所以我尝试了以下正则表达式:

^{pr2}$

不幸的是,第一个错误会引发一个“multiplerepeat”错误(Python),而第二个错误只会匹配包含a、C、G和T的6个字符的任何序列

有人能帮我解决这个正则表达式吗? 提前谢谢。在


Tags: 示例错误模式公司序列字符dna个字符
2条回答

一:

(AT){3}

^{pr2}$

C{6}

组合它们!在

(C{6}|(GA){4}|(AT){3})

你也许可以利用反向引用。在

([ATGC]{2})\1{2,}

\1是指向第一个捕获组的反向引用,它将是您捕获的内容。在

regex101 demo

相关问题 更多 >