JS 正規表現でバリデーションをかける【サンプルコード】
Javascriptで正規表現をかける場合のサンプルを作成しました。
サンプルコード
function regularExpression(value, name, array){
const katakana = '\\u30a0-\\u30ff';
const hiragana = '\\u3040-\\u309f';
const kigou = '';
const kanji = '\\u30e0-\\u9fcf\\u3005-\\u3006';
const eiji = 'A-Za-z';
const number = '0-9';
const zenkakueiji = 'A-Za-z';
const zenkakunumber = '0-9';
var list = '^[';
for(var i = 0; i < array.length; ++i){
switch (array) {
case 'カタカナ':
list += katakana;
break;
case 'ひらがな':
list += hiragana;
break;
case '記号':
list += kigou;
break;
case '漢字':
list += kanji;
break;
case '半角英字':
list += eiji;
break;
case '半角数字':
list += number;
break;
case '全角英字':
list += zenkakueiji;
break;
case '全角数字':
list += zenkakunumber;
break;
case '半角英数字':
list += eiji;
list += number;
break;
case '全角英数字':
list += zenkakueiji;
list += zenkakunumber;
break;
}
}
list += ']+$';
objRegex = new RegExp(list);
if(!value.match(objRegex)){
var format = array.join(',');
return name + 'は【' + format + '】で入力してください。';
}
return true;
}
使用方法
第一引数には、判定する文字列。 第二引数には、判定する項目名。 第三引数には、許可するフォーマットを配列で渡します。 許可するフォーマットは、以下が用意してあります。 ・ひらがな ・漢字 ・カタカナ ・半角英字 ・全角英字 ・半角数字 ・全角数字 ・半角英数字 ・全角英数字 ・記号 ※ 記号は、許可したい記号を定数に入力してください。 もし、入力値(判定する文字列)に問題がなければ、trueが返ります。 問題があれば、エラーメッセージが返ります。
使用例
console.log(regularExpression(‘検査する文字’, ‘サンプル’ , [‘ひらがな’, ‘漢字’])); → true console.log(regularExpression(‘検査する文字’, ‘サンプル’ , [‘記号’, ‘英字’, ‘数字’])); → サンプルは【記号,英字,数字】で入力してください。