Во-первых, если вы хотите заменить байт 0x20 (это пробел, если я не ошибаюсь), вам нужно использовать \%x20
, а не \x20
, потому что \x
обозначает шестнадцатеричную цифру (если не используется внутри коллекции, \x20
означает то, что ожидалось).Но если вы хотите заменить данный символ Unicode, вы должны использовать \%u200E
(\u200E
внутри коллекции).
Во-вторых, и \%x20
, и [\x20]
будут соответствовать символу с кодом Unicode 0x20, а небайт с кодом 0x20.Это не имеет значения для пробела, но имеет значение для кодовых точек> 0x7F.