1.常见的中文 u4e00-u9fbb 和 u4e00-u9fa5 (不包含生僻字)
2.比较广泛的中文汉字。(包含了咱们需要的生僻字 和 不需要的很多字符 比如 中文句号分号逗号、书名号 等等) u2E80-uFE4F
3.CJK标点符号
范围:u3000-u303F
参考地址:http://www.unicode.org/charts/PDF/U3000.pdf
根据以上三点,我们要用第二个再排除第三个,所以判断是否包含生僻字的中文姓名的正则表达式如下所示:
你试试这个:/(^[u2E80-uFE4F]{2,32}$)|(^[a-zA-Z]{2,32}$)/
/^((?![u3000-u303F])[u2E80-uFE4F]|·)*(?![u3000-u303F])[u2E80-uFE4F](·)*$/.test(name)