I am trying to make a regex that only allows chars A-Z + ints 0 - 9 together with dash - and underscore _ but also Japanese chars.
$.validator.addMethod("alphaDash", function(value, element) {
return this.optional(element) || /^[a-zA-Z0-9-_]+$/i.test(value);
}, "Username must contain only letters, numbers, dashes or underscores.");
The regex above /^[a-zA-Z0-9-_]+$/ only works for english chars, how can I make it accept japanese chars? Hiragana/Katakana/Kanji
Acc. to XRegExp Unicode scripts:
\p{Hiragana}) char regex:[\u3041-\u3096\u309D-\u309F]|\uD82C\uDC01|\uD83C\uDE00\p{Katakana}) char regex:[\u30A1-\u30FA\u30FD-\u30FF\u31F0-\u31FF\u32D0-\u32FE\u3300-\u3357\uFF66-\uFF6F\uFF71-\uFF9D]|\uD82C\uDC00\p{Han}):[\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u3005\u3007\u3021-\u3029\u3038-\u303B\u3400-\u4DB5\u4E00-\u9FD5\uF900-\uFA6D\uFA70-\uFAD9]|[\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]You may either use XRegExp (which is preferable since the library is constantly updated):
Or you may use those ranges to build a regex that you will have to support later: