正则表达式:字符串中必须包含某个字符的
发布时间:2025-05-23 09:16:18 发布人:远客网络
一、正则表达式:字符串中必须包含某个字符的
正则表达式是什么?简单来说,它是人们根据某些特定规则制定的一种规范用以匹配与约束数据。
如何编写一个正则表达式,正则表达式由普通字符(例如字符a~z)以及特殊字符(称为元字符)组成的文字模式。
^(?=[b-zB-Z]*[0-9])(?=[0-9]*[a-zA-Z])[a-zA-Z0-9]{12}$
此表达式可以匹配的数据格式为:
由字母和数字组成的12位数据,字母不区分大小写;并且至少包含一个字母。
^:开始符号修饰符,限制开头数据格式。例:^123校验文本必须以123开头。
$:结束符号修饰符。限制结尾数据格式。例:123$校验文本必须以123开头。
():是为了提取匹配字符串的,表达式中有几个()就有几个相应的匹配字符串。例:(abc|bcd|cde),表示这一段是abc、bcd、cde三者之一,顺序也必须一致。
?=:匹配文本字符串某一段规则。
[]:取值范围,可以包含数字、字母、特殊符号(需要进行转义)
{}:限定符,可以设置最小、大或者固定重复几次
1、必须包含数字、大写字母、小写字母、特殊符号且长度在10到20之间
“最少包含2个大写字母、2个小写字母、2个数字、2个指定的特殊字符、长度10到20”
应该怎么处理?其实很简单只要将断言写两遍即可
二、正则表达式如何匹配+号
其中”\“是转义字符,因为+是正则表示式中的特殊符号,所以需要使用”\“进行转义。
匹配前面的子表达式一次或多次。要匹配+字符,使用 \+。
将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如,'n'匹配字符'n'。'\n'匹配换行符。序列'\\'匹配"\",而'\('则匹配"("。
指明两项之间的一个选择。要匹配|,使用 \|。
匹配输入字符串开始的位置。如果设置了 RegExp对象的 Multiline属性,^还会与 \n或 \r之后的位置匹配。
匹配输入字符串结尾的位置。如果设置了 RegExp对象的 Multiline属性,$还会与 \n或 \r之前的位置匹配。
匹配一个单词边界,即字与空格间的位置。
三、20个常用的正则表达式
匹配非负整数(正整数和0):^\d+$
匹配非正整数(负整数和0):^((-\d+)|(0+))$
匹配非负浮点数(正浮点数和0):^\d+(.\d+)?$
匹配正浮点数:^[1-9]\d*.\d*|0.\d*[1-9]\d*$
匹配非正浮点数(负浮点数和0):^((-\d+(.\d+)?)|(0+(.0+)?))$
匹配负浮点数:^-([1-9]\d*.\d*|0.\d*[1-9]\d*)$
匹配浮点数:^-?\d+(.\d+)?$
匹配由26个英文字母组成的字符串:^[A-Za-z]+$
匹配由26个大写英文字母组成的字符串:^[A-Z]+$
匹配由26个小写英文字母组成的字符串:^[a-z]+$
匹配由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
匹配由数字、26个英文字母或者下划线组成的字符串:^\w+$
匹配电子邮件地址:^\w+([-+.]\w+)*@\w+([-.]\w+
匹配URL:^[a-zA-z]+://(\w+(-\w+)*)(.(\w+(-\w+
匹配手机号码:^1[3|4|5|6|7|8|9][0-9]{9}$
匹配身份证号码:^\d{15}|\d{18}$