S'il vous plaît comment puis-je résoudre le problème decorrespondants multiples regexes python dans une ligne dans tarfile ouvert fichier tar
TypeError: cannot use a string pattern on a bytes-like object
lorsque vous essayez d'exécuter plusieurs regexes match contre une ligne à partir du fichier? Le match multiple Je suis en train est:
re.match('|'.join('(?:{0})'.format(x) for x in (regex1, regex2, regex3)), line):
qui travaille dans les matches de fichier texte et que j'attribue à l'aide Stackoverflow.
J'ai compilé les expressions rationnelles comme ceci:
regex1 = re.compile(b'http\:\/\/ipaddress\:port\/service\?')
regex2 = re.compile(b'\_event\=new?')
regex3 = re.compile(b'askment\:')
mais TypeError apparaît encore.
Plus tôt dans mon script, je peux sortir avec ceci: match = re.search (b'something-string: \ s + 111 + \ d {2,5}, ligne) Je pensais préfixer la Les regex avec 'b' dans la correspondance multiple étaient suffisants. S'il vous plaît ce que je fais mal?
Essayez d'utiliser 'r '... '' au lieu de 'b' ... '' –
Je ne peux pas utiliser r' ..' parce que son pas un fichier texte en cours de lecture. – Sina