1.常見的中文 \u4e00-\u9fbb 和 \u4e00-\u9fa5 (不包含生僻字)正則表達式
2.比較普遍的中文漢字。(包含了我們須要的生僻字 和 不須要的不少字符 好比 中文句號分號逗號、書名號 等等) \u2E80-\uFE4Fspa
3.CJK標點符號
範圍:\u3000-\u303F
參考地址:http://www.unicode.org/charts/PDF/U3000.pdfcode
根據以上三點,咱們要用第二個再排除第三個,因此判斷是否包含生僻字的中文姓名的正則表達式以下所示:blog
你試試這個:/(^[\u2E80-\uFE4F]{2,32}$)|(^[a-zA-Z]{2,32}$)/unicode
/^((?![\u3000-\u303F])[\u2E80-\uFE4F]|\·)*(?![\u3000-\u303F])[\u2E80-\uFE4F](\·)*$/.test(name)