В настоящее время я использую это для форматирования входного текста, чтобы иметь "-" после двух символов, и он заменяет символы, которые не являются "af" или "0-9" на "".
var macAddress = document.getElementById("macInput");
function formatMAC(e) {
var r = /([a-f0-9]{2})([a-f0-9]{2})/i,
str = e.target.value.replace(/[^a-f0-9]/ig, "");
while (r.test(str)) {
str = str.replace(r, '$1' + '-' + '$2');
}
e.target.value = str.slice(0, 17);
};
macAddress.addEventListener("keyup", formatMAC, false);
Я хочу, чтобы он также обнаружил, если пользователь пишет «:», и заменил его на «-», поэтому становится невозможным написать «:». Не уверен, как это сделать.