js 正则校验真实姓名汉字
时间: 2023-09-30 20:03:40 浏览: 51
可以使用如下的正则表达式来校验真实姓名是否为汉字:
```js
/^[\u4e00-\u9fa5·]{2,20}$/ // 匹配 2-20 个汉字或中间带有“·”
```
解释一下正则表达式:
- `^` 表示字符串的开头
- `[\u4e00-\u9fa5·]` 表示匹配汉字或“·”符号
- `{2,20}` 表示匹配 2-20 个汉字或“·”符号
- `$` 表示字符串的结尾
使用示例:
```js
const regex = /^[\u4e00-\u9fa5·]{2,20}$/;
console.log(regex.test('张三')); // true
console.log(regex.test('李四·王五')); // true
console.log(regex.test('John Smith')); // false
```
注意,这个正则表达式只能校验真实姓名是否为汉字,但是并不能确定这个姓名是否真实存在。
相关问题
js正则校验是否中文金额
以下是一个用于校验中文金额的正则表达式:
```
/^([壹贰叁肆伍陆柒捌玖拾佰仟万亿元角分整]|[零0])([亿]|[拾]|[佰]|[仟]){0,1}(([壹贰叁肆伍陆柒捌玖]|[零0]){1,4}|[万]){0,1}(([壹贰叁肆伍陆柒捌玖]|[零0]){1,4}|[万]){0,1}(([壹贰叁肆伍陆柒捌玖]|[零0]){1,4}|[万]){0,1}(([壹贰叁肆伍陆柒捌玖]|[零0]){1,4}){0,1}([角]|[零0]){0,1}([壹贰叁肆伍陆柒捌玖]|[零0]){0,1}([分]|[零0]){0,1}([整]|[零0]){0,1}$/
```
这个正则表达式可以匹配以下格式的中文金额:
- 壹元整
- 陆角叁分
- 壹拾元整
- 壹佰元整
- 壹仟元整
- 壹万元整
- 壹亿元整
- 壹拾万元整
- 壹佰万元整
- 壹仟万元整
- 壹亿元整
- 壹角整
- 壹分整
- 零元整
- 零角零分
- 零点零元整
使用示例:
```js
const regex = /^([壹贰叁肆伍陆柒捌玖拾佰仟万亿元角分整]|[零0])([亿]|[拾]|[佰]|[仟]){0,1}(([壹贰叁肆伍陆柒捌玖]|[零0]){1,4}|[万]){0,1}(([壹贰叁肆伍陆柒捌玖]|[零0]){1,4}|[万]){0,1}(([壹贰叁肆伍陆柒捌玖]|[零0]){1,4}|[万]){0,1}(([壹贰叁肆伍陆柒捌玖]|[零0]){1,4}){0,1}([角]|[零0]){0,1}([壹贰叁肆伍陆柒捌玖]|[零0]){0,1}([分]|[零0]){0,1}([整]|[零0]){0,1}$/;
const amount1 = "壹百贰十叁元壹角伍分";
const amount2 = "贰千元整";
const amount3 = "伍拾万元整";
const amount4 = "零元整";
const amount5 = "零点零元整";
console.log(regex.test(amount1)); // true
console.log(regex.test(amount2)); // true
console.log(regex.test(amount3)); // true
console.log(regex.test(amount4)); // true
console.log(regex.test(amount5)); // true
```
前端js使用正则校验中文大写金额
可以使用以下正则表达式来校验中文大写金额:
```javascript
/^((壹|贰|叁|肆|伍|陆|柒|捌|玖|拾|佰|仟|万|亿)+)?(点(零|壹|贰|叁|肆|伍|陆|柒|捌|玖)+)?$/
```
这个正则表达式可以匹配以下格式的中文大写金额:
- 壹元整
- 贰拾元整
- 肆佰伍拾元整
- 陆仟柒佰捌拾元整
- 壹万贰仟叁佰肆拾五元整
- 壹亿贰仟叁佰肆拾五万陆仟柒佰捌拾元整
- 壹角贰分
- 伍角
你可以使用这个正则表达式来校验输入的中文大写金额是否符合规范。