Chuỗi là mã hex hợp lệ nếu chỉ chứa ký tự 0-9 và a-f (chữ thường).
Ví dụ
'3423ad'→ hợp lệ'4234es'→ không hợp lệ (chứa 'e', 's' - nhưng 'e' hợp lệ, 's' không)
Giải pháp
Mã triển khai:
const str1 = '4234es';
const str2 = '3423ad';
const isHexValid = str => {
const legend = '0123456789abcdef';
for (let i = 0; i < str.length; i++) {
if (!legend.includes(str[i])) return false;
}
return true;
};
console.log(isHexValid(str1)); // false
console.log(isHexValid(str2)); // true
Kết quả
Đầu ra trong console:
false
true
Cách ngắn gọn: /^[0-9a-f]+$/i.test(str) (regex, cho phép chữ hoa).