J'ai une chaîne comme, et une liste de substrings comme p> je veux Recherchez les substrings dans la liste de la chaîne plus grande et posez les cas de correspondance modifiés en minuscules dans la chaîne plus grande elle-même. Je sais comment rechercher une chaîne dans une autre à l'aide de la méthode La chaîne de sortie souhaitée doit être comme celle-ci, P>
Rechercher () CODE>, mais je ne peux pas penser à la meilleure façon de passer les sous-chaînes correspondantes remplacées dans la chaîne plus grande. Je cherche une façon plus propre et efficace de la fonctionnalité de le faire. P> output = "PTAQIFAIIAmrdgrvylhpsntppstopGCCRCRVFTLLRLPSGTFDESTTGWEKTSSLYHPGGNHTSTVSWWTILRKAAMGTGRLL...."
3 Réponses :
Je pense que vous pouvez utiliser la méthode Split ():
for category in category_codes:
tmp_list = subject_codes.split(category, -1)
category.lower().join(tmp_list)
Vous pouvez utiliser RegEx en créant un autre groupe de la deuxième liste
s = '|'.join(category_codes) res = re.sub(s, lambda x: x.group(0).lower(), subject_codes)
Pourquoi le '(' et '|' quand convertir des objets de liste à une seule chaîne?
`(A | B) signifie trouver 'A' ou 'B'
Dans ce cas, les crochets sont même extra
simple, mais pas très performant et informatique inefficace: