JavaScriptでひらがなチェックを行うサンプルです。
正規表現を使ってマッチするかどうかだけです。
Program
句読点を含まない場合。全角スペースは含む場合。
var s = "へのへの もへじー"; /^[ぁ-んー ]*$/.test(s); // → true
句読点を含める場合。
var s = "へのへのもへじー、。"; /^[ぁ-んー 、。]*$/.test(s); // → true
関数として作ると以下のようになります。
function isHiragana(s) { return /^[ぁ-んー ]*$/.test(s); }
正規表現オブジェクトを定義しておくのもよいでしょう。
var hiragana = new RegExp(/^[ぁ-んー ]*$/); hiragana.test("アイウエオワヲン"); // → false hiragana.test("aiueo"); // → false hiragana.test("あい うえ おー"); // → true
Demo
結果:
Memo
String.match を使ってもよいですが、matchしたいものがStringかどうかチェックが必要になるので、チェックのみであれば RegExp.test のほうが楽です。
null.match(/^[ぁ-んー ]*$/); // Uncaught TypeError: Cannot read property 'match' of null 123.match(/^[ぁ-んー ]*$/); // Uncaught SyntaxError: Invalid or unexpected token
/^[ぁ-んー ]*$/.test(123); // false /^[ぁ-んー ]*$/.test(undefined); // false
空文字はエラーとしたい場合は、正規表現の /^[ぁ-んー ]*$/ を /^[ぁ-んー ]+$/ にします。