J'ai un fichier qui contient (je crois) un codage latin-1.regex Python contre l'encodage de caractères Latin-1?
Cependant, je ne peux pas faire correspondre les expressions rationnelles avec ce fichier.
Si je chat le fichier, il semble bien:
Cependant, je ne peux pas trouver la chaîne:
In [12]: txt = open("b").read()
In [13]: print txt
<Vw_IncidentPipeline_Report>
In [14]: txt
Out[14]: '\x00 \x00 \x00<\x00V\x00w\x00_\x00I\x00n\x00c\x00i\x00d\x00e\x00n\x00t\x00P\x00i\x00p\x00e\x00l\x00i\x00n\x00e\x00_\x00R\x00e\x00p\x00o\x00r\x00t\x00>\x00\r\x00\n'
In [22]: txt.find("Vw_IncidentPipeline_Report")
Out[22]: -1
In [23]: txt.decode("latin-1")
Out[23]: u'\x00 \x00 \x00<\x00V\x00w\x00_\x00I\x00n\x00c\x00i\x00d\x00e\x00n\x00t\x00P\x00i\x00p\x00e\x00l\x00i\x00n\x00e\x00_\x00R\x00e\x00p\x00o\x00r\x00t\x00>\x00\r\x00\n'
In [25]: txt.decode("utf-16le")
Out[25]: u'\u2000\u2000\u3c00\u5600\u7700\u5f00\u4900\u6e00\u6300\u6900\u6400\u6500\u6e00\u7400\u5000\u6900\u7000\u6500\u6c00\u6900\u6e00\u6500\u5f00\u5200\u6500\u7000\u6f00\u7200\u7400\u3e00\u0d00\u0a00'
Comment puis-je décode avec succès la chaîne, donc je peux trouver des chaînes dans ce?
Y at-il un marque de l'ordre des octets («\ xff \ xfe» ou «\ xfe \ xff») au début du fichier? –
À moins que l'OP ait édité la transcription ci-dessus, le fichier est de toute évidence (a) codé en UTF-16BE (b) n'a pas de nomenclature au début. –