正则表达式

正则表达式通常用于匹配字符是否满足某一标准

比如我这边一个输入框,你要如何形容只能有数字?只能是大写拼音?

这就有了正则表达式

1.\[\]

abc:这个字符可以是a或b或c

a-z :表示任意一个小写字母

a-zA-Z :表示任意一个字母

a-zA-Z0-9_ :表示任意一个数字字母下划线

\^abc :该字符只要不是a或b或c

2.预定义字符

. :表示任意一个字符,没有范围限制

\d :表示任意一个数字,等同于0-9

\w :表示任意一个单词字符,等同于a-zA-Z0-9_--单词指字母/数字/_

\s :表示任意一个空白字符

\D :表示不是数字

\W :不是单词字符

\S :不是空白字符

3.量词

?:表示前面的内容出现0-1次

例如: abc? 可以匹配:a 或 b 或 c 或什么也不写

+:表示前面的内容最少出现1次

例如: abc+ 可以匹配:b或aaaaaaaaaa...或abcabcbabcbabcba...

但是不能匹配:什么都不写 或 abcfdfsbbaqbb34bbwer...

*:表示前面的内容出现任意次(0-多次)---匹配内容与+一致,只是可以一次都不写

例如: abc* 可以匹配:b或aaaaaaaaaa...或abcabcba...或什么都不写

但是不能匹配:abcfdfsbbaqbb34bbwer...

{n}:表示前面的内容出现n次

例如: abc{3} 可以匹配:aaa 或 bbb 或 aab 或abc 或bbc

但是不能匹配: aaaa 或 aad

{n,m}:表示前面的内容出现最少n次最多m次

例如: abc{3,5} 可以匹配:aaa 或 abcab 或者 abcc

但是不能匹配:aaaaaa 或 aabbd

{n,}:表示前面的内容出现n次以上(含n次)

例如: abc{3,} 可以匹配:aaa 或 aaaaa... 或 abcbabbcbabcba...

但是不能匹配:aa 或 abbdaw...

4.用于分组(),括号内的为一个整体

(abc){3} 表示abc整体出现3次. 可以匹配abcabcabc

但是不能匹配aaa 或abcabc
(abc|def){3} 表示abc或def整体出现3次.

可以匹配: abcabcabc 或 defdefdef 或 abcdefabc

但是不能匹配abcdef 或abcdfbdef

5.^符

当^在\[\]中表示集合的取反,比如\^abc表示不含a、b、c的

当在外边的时候表示开始,比如^abc表示以abc为开头的字符,比如abc123

\^0-9表示不为数字

6.特别情况

1.个别字符如. * +你要固定使用,比如在邮箱.com中,使用.需要转义为\.

2.$和^相反,匹配的是字符的结尾

3.断言:

  • (?=.*[a-z]):断言接下来的字符中至少有一个小写字母。
  • (?=.*[A-Z]):断言接下来的字符中至少有一个大写字母。
  • (?=.*\d):断言接下来的字符中至少有一个数字。
  • (?=.*[\W_]):断言接下来的字符中至少有一个特殊字符(非字母、数字或下划线,\W 匹配非单词字符,包括特殊字符)。

4.\b和\B匹配单词边界和非单词边界,比如

  • \bis\b 只匹配单词 "is",而不会匹配 "This" 中的 "is"。
  • \Bis\B 会匹配 "This" 中的 "is",因为 "is" 前后的字符("h" 和空格)都是非单词字符。

实力测试,看看学完上面的后下面给你的问题你能不能接住~

1.只能是数字

2.只能是大小写字母并且是6-10位

3.必须有大小写字母和数字且含有特殊字符,在8-12位

4.必须以1-5个小写字母开头,以@符号结尾,总长度不大于16个字符

答案在下面~~




答案仅参考,不唯一

^\d+$

^a-zA-Z{6,10}$

(?=.*a-z)(?=.*A-Z)(?=.*\d)(?=.*\\W_)a-zA-Z\\d\\W_{8,12}$

^a-z{1,5}.*@.{0,9}$

参考博文:正则表达式(常用版)-CSDN博客

相关推荐
只愿云淡风清3 天前
正则表达式学习笔记 02:基础语法
笔记·学习·正则表达式
Frag0ut7 天前
Notepad++ 正则表达式完全手册:文本处理的终极武器(2026实战版)
正则表达式·notepad++·数据清洗·日志分析·正则替换·提取ip·正则表达式实战
Patrick在香港10 天前
一个斜杠,把毫秒变成十几秒
android·数据库·python·性能优化·正则表达式·回溯·redos
echome88810 天前
Python 正则表达式:5 个日常够用的模式
python·正则表达式
yivifu12 天前
能够使用Python正则表达式函数的文本处理工具——Calibre电子书编辑器
正则表达式
全栈陈序员12 天前
【Python】基础语法入门(二十九)—— 正则表达式实战:文本处理利器
开发语言·人工智能·python·正则表达式
BruceXu18 天前
\b 在中文里会静默失效:三个正则坑和一份能用的字符边界方案
正则表达式
阿昭L19 天前
正则表达式
正则表达式·编译原理
波力海苔夹心脆67520 天前
C# 正则表达式零基础入门:从“看得懂“到“会用“
经验分享·后端·mysql·正则表达式·c#
FRing0321 天前
JavaScript入门到精通二十四(正则表达式、元字符、修饰符)
开发语言·前端·javascript·正则表达式