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[i]) {
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('検査する文字', 'サンプル' , ['記号', '英字', '数字']));
→ サンプルは【記号,英字,数字】で入力してください。