javascript正則は漢字、数字、字母、下線にマッチしています。


javascript正則では、漢字、数字、字母、下線だけが含まれています。下線は下線で始まることと終わることができません。
ユーザー名のテストの問題があったら、調べてみました。要約の例は以下の通りです。

var reg = /^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$/;
if (!reg.test( )) {
    alert(' 5-24 : 、 、 、“_”, ');
}