Возможно, это связано с кодировкой вашего файла.Попробуйте это:
import re
path = "g:\python_code\A.txt"
f_general=open(path, "r", encoding="UTF-16")
data = f_general.read()
special=re.findall(chr(8482), data)
print(special)
print(chr(8482))
Примечание. Я использую десятичное значение для торговой марки.Это сайт, который я использую: https://www.ascii.cl/htmlcodes.htm
Итак, откройте файл, который у вас есть в блокноте.Сделайте save as
и выберите кодировку unicode
, и все это должно работать.Работа с расширенной ASCII может быть хлопот.Я использую Python 3.6 , но я думаю это все равно должно работать в 2.x
Обратите внимание, что когда он печатает chr(8482)
в командной строке, он, вероятно, будетпросто будьте T
, по крайней мере, это то, что я получаю в Windows.
update
Попробуйте это для Python 2, и это должно захватить слово перед товарным знаком:
import re
with open("g:\python_code\A.txt", "rb") as f:
data = f.read().decode("UTF-16")
regex = re.compile("\S+" + chr(8482))
match = re.search(regex, data)
if match:
print (match.group(0))