online example compile regex string variables format findall

example - Usando.format para usar la variable en el objeto regex findall. Pitón



re compile string (1)

Python se queja de que hay otros { y } en su cadena que no se usan para el formato, y no sabe cómo diferenciarlos. En una cadena de formato, las llaves se escapan doblándolas.

También necesita escapar de los caracteres regex en su value .

Así que tal vez:

ORF = re.findall( r''ATG(?:(?!TAA|TAG|TGA)…){{{},}}?(?:TAA|TAG|TGA)'' .format(re.escape(value)), seq)

Sin embargo, en un caso como este, dudo que alguien le fallará por usar % -formatting o una buena concatenación de cadenas antiguas en su lugar :)

Vi algunos ejemplos de esto aquí, pero no respondió mi pregunta: Findall de expresión regular de Python con variable

Estoy tratando de usar una variable en lugar de la 9, pero parece que no puedo entenderlo

value = 9 ORF = re.findall(r''ATG(?:(?!TAA|TAG|TGA)…){ value ,}?(?:TAA|TAG|TGA)'',seq) #obviously doesn''t work or i wouldn''t have made this post

Lo intenté:

value = 9 ORF = re.findall(r''ATG(?:(?!TAA|TAG|TGA)…){ {} ,}?(?:TAA|TAG|TGA)''.format(value),seq)

pero obtuve el error:

ValueError: Single ''}'' encountered in format string

entonces lo intenté:

value = r''{}''.format(9) ORF = re.findall(r''ATG(?:(?!TAA|TAG|TGA)...){value,}?(?:TAA|TAG|TGA)'',seq)

y no obtuve ningún error, pero no funcionó cuando miré aguas abajo

¿Cómo puedo hacer que esta variable funcione en mi expresión regular?