Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我可以使用正则表达式反向引用修改后的捕获吗?_Python_Regex - Fatal编程技术网

Python 我可以使用正则表达式反向引用修改后的捕获吗?

Python 我可以使用正则表达式反向引用修改后的捕获吗?,python,regex,Python,Regex,我正在python中使用正则表达式。关于re我已经知道的是,我可以使用像“([a-z]{2,4})is\1”这样的模式来匹配文本“我认为食物就是食物。”或文本中的“猫就是猫”“我认为猫就是猫。” 我现在想做的是匹配一些倒序,比如“food is doof”,或者“cat is tac”,这需要修改后的back引用 是否仍有使用正则表达式匹配的方法?谢谢您找不到任何长度的regexp,最好是针对特定长度的regexp 例如,对于4个字母的单词: ([a-z])([a-z])([a-z])([a-z

我正在python中使用正则表达式。关于re我已经知道的是,我可以使用像
“([a-z]{2,4})is\1”
这样的模式来匹配
文本
“我认为食物就是食物。”
文本
中的
“猫就是猫”
“我认为猫就是猫。”

我现在想做的是匹配一些倒序,比如
“food is doof”
,或者
“cat is tac”
,这需要修改后的back引用


是否仍有使用正则表达式匹配的方法?谢谢

您找不到任何长度的regexp,最好是针对特定长度的regexp

例如,对于4个字母的单词:

([a-z])([a-z])([a-z])([a-z]) is \4\3\2\1
问题解决了 perl的正则表达式中有一个称为dynamic regex(或类似的东西)的特性,您可以将代码插入正则表达式并获取返回值。这被用作(?{code})。 就我而言,代码是:

/([a-z]{2,4})(??{reverse($1)})/

你试过什么吗?不,你不能只通过正则表达式来做。我想做的是在一个长序列中匹配一些DNA基序。因此,这个主题被隐藏在序列中。我们不知道主题从哪里开始,所以我们不能用“^”来匹配序列的开头@AvinashRaj使用这个
(?而不是凝视锚..它断言匹配不会以非空格字符开头..你能提供一个例子吗?@AvinashRaj现实生活中的例子是一个模式:
p1=2..4 TA~p1
,这意味着模式以p1开头,后面是2到4个字母,后面是字母“TA”,然后是p1的反向补码(在反向后做一些替换)。然后我需要定位模式
p1=2..4 TA~p1
,由大约1000个
[ATGC]
组成的序列。谢谢,你已经解决了我原来的帖子。但是,我想要的是匹配一个长度范围,比如{2,4}。