正则表达式:数字、字母、下划线、汉字

0.密码必须包含大小写字母和数字,8-20位

const reg = /^(?=.*[0-9].*)(?=.*[A-Z].*)(?=.*[a-z].*).{8,20}$/;

正则表达式里"-"中划线的使用注意

/^[A-Za-z0-9_.*+%!-]/,在中间放的中划线会被识别为连接符,表示一个范围,放最后。

或者用"\"转义一下

/^[a-zA-Z0-9_\-\u4e00-\u9fa5]{2,30}/;

1.由数字、26个英文字母或者下划线组成的字符串:
    ^[0-9a-zA-Z_]{1,}$
2.非负整数(正整数 + 0 ):
    ^/d+$
3. 正整数:
    ^[0-9]*[1-9][0-9]*$
4.非正整数(负整数 + 0):
    ^((-/d+)|(0+))$
5. 负整数 :
    ^-[0-9]*[1-9][0-9]*$
6.整数:    
    ^-?/d+$
7.非负浮点数(正浮点数 + 0):
    ^/d+(/./d+)?$
8.正浮点数 :
    ^(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$
9. 非正浮点数(负浮点数 + 0):
    ^((-/d+(/./d+)?)|(0+(/.0+)?))$
10.负浮点数 :
    ^(-(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*)))$
11. 浮点数 :
    ^(-?/d+)(/./d+)?$
12.由26个英文字母组成的字符串 :    
    ^[A-Za-z]+$
13. 由26个英文字母的大写组成的字符串 :
    ^[A-Z]+$
14.由26个英文字母的小写组成的字符串 :
    ^[a-z]+$
15. 由数字和26个英文字母组成的字符串 :
    ^[A-Za-z0-9]+$
16.由数字、26个英文字母或者下划线组成的字符串 :    
    ^/w+$
17.email地址 :
    ^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$
18.url:    
    ^[a-zA-z]+://(/w+(-/w+)*)(/.(/w+(-/w+)*))*(/?/S*)?$
19. 年-月-日:
    /^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/
20.月/日/年:
    /^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/
21.Emil:
    ^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$
22. 电话号码:
    (d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?
23.IP地址:
    ^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$
24. 匹配中文字符的正则表达式:
    [/u4e00-/u9fa5]
25.匹配双字节字符(包括汉字在内):
    [^/x00-/xff]
26. 匹配空行的正则表达式:
    /n[/s| ]*/r
27.匹配HTML标记的正则表达式:
    /<(.*)>.*<///1>|<(.*) //>/
28.匹配首尾空格的正则表达式:
    (^/s*)|(/s*$)
29.匹配Email地址的正则表达式:
    /w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*
30. 匹配网址URL的正则表达式:
    ^[a-zA-z]+://(//w+(-//w+)*)(//.(//w+(-//w+)*))*(//?//S*)?$
31. 匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):
    ^[a-zA-Z][a-zA-Z0-9_]{4,15}$
32. 匹配国内电话号码:
    (/d{3}-|/d{4}-)?(/d{8}|/d{7})?
33.匹配腾讯QQ号:
    ^[1-9]*[1-9][0-9]*$
34. 只能输入数字:
    ^[0-9]*$
35.只能输入n位的数字:
    ^/d{n}$
36.只能输入至少n位的数字:
    ^/d{n,}$
37.只能输入m~n位的数字:
    ^/d{m,n}$
38.只能输入零和非零开头的数字:
    ^(0|[1-9][0-9]*)$
39.只能输入有两位小数的正实数:
    ^[0-9]+(.[0-9]{2})?$
40. 只能输入有1~3位小数的正实数:
    ^[0-9]+(.[0-9]{1,3})?$
41.只能输入非零的正整数:
    ^/+?[1-9][0-9]*$
42. 只能输入非零的负整数:
    ^/-[1-9][0-9]*$
43.只能输入长度为3的字符:
    ^.{3}$
44. 只能输入由26个英文字母组成的字符串:
    ^[A-Za-z]+$
45.只能输入由26个大写英文字母组成的字符串:
    ^[A-Z]+$
46. 只能输入由26个小写英文字母组成的字符串:
    ^[a-z]+$
47.只能输入由数字和26个英文字母组成的字符串:
    ^[A-Za-z0-9]+$
48. 只能输入由数字和26个英文字母或者下划线组成的字符串:
    ^/w+$
49.验证用户密码(正确格式为: 以字母开头,长度在5~17 之间,只能包含字符、数字和下划线)
    ^[a-zA-Z]/w{5,17}$
50.验证是否包含有 ^%&',;=?$/"等字符:
    [^%&',;=?$/x22]+
51.只能输入汉字:
    ^[\u4e00-\u9fa5]{0,}$
52、只含有汉字、数字、字母、下划线不能以下划线开头和结尾
    ^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$
53、只含有汉字、数字、字母、下划线,下划线位置不限
    ^[a-zA-Z0-9_\u4e00-\u9fa5]+$
54、2~4个汉字
    @"^[\u4E00-\u9FA5]{2,4}$

55、

第一位是【1】开头,第二位则则有【3,4,5,7,8】,第三位则是【0-9】,第三位之后则是数字【0-9】。
var reg = /^1[3|4|5|7|8][0-9]{9}$/;
手机号第二位不做限制
var reg = /^1[0-9]{10}$/;

<think>好的,我现在要解决用户关于中文输入法出现下划线的问题。首先,用户提到下划线出现的原因,我需要结合之前提供的引用信息来分析。根据引用[1]、[3],微软输入法有时候只能打出带下划线字母,这可能和资源管理器的问题有关,比如需要重启。而引用[2]提到在VIM中输入模式切换时,下划线可能表示替换模式,这或许和输入法的状态有关。 首先,我需要确认下划线出现的不同场景。比如在常规输入时,下划线可能表示未上屏的预输入状态,但用户遇到的情况是只能显示下划线而无法输入中文,这可能涉及输入法进程卡住或状态错误。引用[1]指出重启资源管理器可以解决,说明可能是资源管理器的问题导致输入法无法正常显示候选栏,转而显示下划线。此外,引用[3]提到用户之前通过重启电脑解决,但更有效的方法是重启资源管理器,这进一步支持了进程问题的可能性。 另外,输入法的模式设置也可能导致下划线,比如在VIM中进入替换模式时,光标变为下划线,但这种情况特定于编辑器环境。用户的问题可能更普遍,所以需要区分系统级输入法问题和应用程序特定的设置。还有,输入法配置错误或冲突的软件可能干扰输入法正常运作,导致显示异常。比如,第三方软件冲突或输入法设置中的兼容性问题。 接下来,我需要整理可能的原因:1.输入法进程卡住,需要重启资源管理器;2.输入法处于特殊模式(如英文输入状态);3.软件冲突或兼容性问题;4.系统或输入法文件损坏。然后,针对这些原因提供相应的解决方法,如重启资源管理器、切换输入模式、检查软件冲突、修复系统文件等。需要确保步骤清晰,用户容易操作,同时引用相关的引用内容作为支持,比如引用[1]的重启步骤。 最后,生成相关问题时要考虑用户可能进一步想知道如何预防或更深层次的原因,比如优化输入法稳定性或与其他软件的兼容性问题。这有助于用户全面了解问题,并预防未来出现类似情况。</think>### 中文输入法出现下划线的常见原因 中文输入法在输入时显示下划线(而非候选词栏),通常与以下原因相关: 1. **输入法进程异常** 输入法核心进程(如IME服务)卡顿或崩溃时,可能导致输入内容仅显示带下划线的预输入字母,无法切换为中文。 **解决方法**: - 按`Ctrl+Shift+Esc`打开任务管理器,找到`Windows 资源管理器` → 点击`重启任务`[^1]。 - 若无效,可尝试重新启动输入法进程或系统。 2. **输入法模式错误** - 输入法可能被意外切换至**英文模式**(如按了`Shift`键),此时输入内容直接显示为带下划线字母- 在特定编辑器(如VIM)中,输入法可能与编辑模式冲突(如替换模式下光标显示为下划线)[^2]。 **解决方法**: - 点击输入法状态栏切换至中文模式,或按`Shift`键切换中英文。 - 检查编辑器模式(如VIM中按`ESC`退出输入模式)。 3. **软件兼容性问题** 第三方软件(尤其是安全软件或全局快捷键工具)可能干扰输入法正常运行,导致候选栏无法显示。 **解决方法**: - 关闭冲突软件或更新输入法至最新版本。 - 在输入法设置中启用兼容模式。 4. **系统文件损坏** 输入法依赖的系统组件(如.NET Framework或IME文件)损坏时,可能引发异常。 **解决方法**: - 通过`设置 → 应用 → 输入法 → 修复`尝试修复。 - 使用系统命令`sfc /scannow`扫描并修复系统文件。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值