Обнаружить непечатные символы в JavaScript
Можно ли обнаружить двоичные данные в JavaScript?
Я хотел бы иметь возможность обнаруживать двоичные данные и преобразовывать их в шестнадцатеричные для облегчения чтения / отладки.
После более глубокого изучения я понял, что обнаружение двоичных данных не является правильным вопросом, потому что двоичные данные могут содержать обычные символы и непечатаемые символы.
Вопрос и ответ Outis (/[\x00-\x1F]/) - действительно лучшее, что мы можем сделать в попытке обнаружить двоичные символы.
Примечание. Вы должны удалить перевод строки и, возможно, другие символы из последовательности строк ascii, чтобы проверка действительно работала.
1 ответ
Если под "двоичным" вы подразумеваете "содержит непечатаемые символы", попробуйте:
/[\x00-\x1F]/.test(data)
Если пробел считается недвоичным, попробуйте:
/[\x00-\x08\x0E-\x1F]/.test(data)
Если вы знаете, что строка является ASCII или двоичной, используйте:
/[\x00-\x1F\x80-\xFF]/.test(data)
или же:
/[\x00-\x08\x0E-\x1F\x80-\xFF]/.test(data)