Следующий фрагмент удаляет определенные в черном списке символы (не рекомендуется):
Вариант 1: класс символов с черным списком.
text = text.replace(/[#$%@~|{}[\]/\\]+/g, '');
Но есть LOT других управляющих, знаков препинания и символов Юникода, которых вы, вероятно, также хотите избежать (например, [¥®^«±µ¼½¾]
и т. Д. Вместо этого, скорее всего, лучше определить, какие символы вы хотите разрешить, а затем удалить все символы, которые НЕ те, которые разрешены.
Вариант 2. Класс отрицательных символов с белым списком.
Допустим, вы хотите разрешить все латинские буквы, цифры, пробелы, точки, тире, подчеркивания и двоеточия (т. Е. [A-Za-z0-9 .\-_:]
). Вот фрагмент кода, который удалит всех персонажей, которых нет в белом списке:
text = text.replace(/[^A-Za-z0-9 .\-_:]+/g, '');