заменить символ торговой марки (™), когда один - PullRequest
1 голос
/ 28 июня 2019

Я пытаюсь удалить символ товарного знака (™), но только в том случае, если за ним не следует какой-либо другой символ, например, у меня может быть â € œ это плохая кодировка кавычки ()), поэтому я нехотите удалить символ товарного знака (™) и, следовательно, нарушить шаблон, который я использую для замены xx ™ на кавычку.

dict = {};

chars = {
    '\xe2\x84\xa2': '', # ™
    '\xe2\x80\x99': "'", # ’
        }

def stats_change(char, number):
  if dict.has_key(char):
    dict[char] = dict[char]+number
  else:
    dict[char] = number # Add new entry

def replace_chars(match):
  char = match.group(0)
  stats_change(char,1)

  return chars[char]

i, nmatches = re.subn("(\\" + '|\\'.join(chars.keys()) + ")", replace_chars, i)
count_matches += nmatches

Ввод: foo™ oof
Ввод: foo oof

Ввод: o’f oof
Ввод: o'f oof

Есть предложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...