স্ট্রিংটি আলফানিউমারিক বা আলফানামুরিক + কিছু অনুমোদিত অক্ষর কিনা তা পরীক্ষা করুন
দ্রুততম বর্ণানুক্রমিক পদ্ধতিটি সম্ভবত উল্লিখিত হিসাবে রয়েছে: জাভাস্ক্রিপ্টে বর্ণানুক্রমিক চেক করার সর্বোত্তম উপায় এটি সরাসরি সংখ্যার ব্যাপ্তিতে কাজ করে।
তারপর, কয়েক অন্যান্য অতিরিক্ত অক্ষর sanely আমরা শুধু তাদের লাগাতে পারেন করার অনুমতি একটিSet
ফাস্ট লুকআপ জন্য।
আমি বিশ্বাস করি যে এই বাস্তবায়নটি সার্োগেট জোড়গুলি সঠিকভাবে সঠিকভাবে মোকাবেলা করবে ।
#!/usr/bin/env node
const assert = require('assert');
const char_is_alphanumeric = function(c) {
let code = c.codePointAt(0);
return (
// 0-9
(code > 47 && code < 58) ||
// A-Z
(code > 64 && code < 91) ||
// a-z
(code > 96 && code < 123)
)
}
const is_alphanumeric = function (str) {
for (let c of str) {
if (!char_is_alphanumeric(c)) {
return false;
}
}
return true;
};
// Arbitrarily defined as alphanumeric or '-' or '_'.
const is_almost_alphanumeric = function (str) {
for (let c of str) {
if (
!char_is_alphanumeric(c) &&
!is_almost_alphanumeric.almost_chars.has(c)
) {
return false;
}
}
return true;
};
is_almost_alphanumeric.almost_chars = new Set(['-', '_']);
assert( is_alphanumeric('aB0'));
assert(!is_alphanumeric('aB0_-'));
assert(!is_alphanumeric('aB0_-*'));
assert(!is_alphanumeric('你好'));
assert( is_almost_alphanumeric('aB0'));
assert( is_almost_alphanumeric('aB0_-'));
assert(!is_almost_alphanumeric('aB0_-*'));
assert(!is_almost_alphanumeric('你好'));
গিটহাব উজানের দিকে ।
নোড.জেএস ভি 10.15.1 এ পরীক্ষিত।