首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

regexp php -取反4位数字(年份)

正则表达式(Regular Expression)是一种用于匹配、查找和替换文本的工具。它可以通过定义一些规则来匹配符合特定模式的字符串。在云计算领域中,正则表达式常用于数据处理、日志分析、网络安全等方面。

PHP是一种广泛应用于Web开发的编程语言,它具有简单易学、功能强大、灵活性高等特点。在PHP中,可以使用正则表达式来进行字符串的匹配、查找和替换操作。

针对题目中的需求,我们可以使用正则表达式来取反匹配4位数字(年份)。具体的正则表达式可以是:^(?!\d{4}$)\d{4}$

解析:

  • ^:匹配字符串的开始位置
  • (?!\d{4}$):负向预查,表示后面不能是4位数字(年份)
  • \d{4}:匹配4位数字
  • $:匹配字符串的结束位置

这个正则表达式的含义是匹配不是4位数字的4位数字,即取反匹配4位数字(年份)。

在PHP中,可以使用preg_match函数来进行正则表达式的匹配操作。下面是一个示例代码:

代码语言:php
复制
$pattern = '/^(?!\d{4}$)\d{4}$/';
$string = '1234';

if (preg_match($pattern, $string)) {
    echo "匹配成功";
} else {
    echo "匹配失败";
}

以上代码中,$pattern是正则表达式的模式,$string是要匹配的字符串。如果匹配成功,则输出"匹配成功";否则输出"匹配失败"。

推荐的腾讯云相关产品:

  • 云服务器(CVM):提供灵活可扩展的云服务器实例,满足各种计算需求。产品介绍链接
  • 云数据库MySQL版(CDB):高性能、可扩展的关系型数据库服务,适用于各种应用场景。产品介绍链接
  • 云安全中心(SSC):提供全面的安全态势感知、风险评估和安全防护能力,保障云上资源的安全。产品介绍链接

以上是对于题目中的问答内容的完善和全面的答案。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

正则表达式用法简介与速查

<=) 元操作符,由于冒号后还有若干个空格, 故用 \s* 予以匹配,但冒号和空格都不出现在匹配结果中, 只出现后面 \d+ 匹配的数字 (4) 取反前后查找(negtive lookahead/lookbehind...但是如果要匹配那些不以a开头的纯数字(如下例中的80和95), 就需要用到“取反前后查找”了。 示例文本 Tom's cardnum is a01. His score is 80....a) 就是取反向后查找, 把不是以 a 开头的数字给匹配出来。注意前后使用的 \b 单词边界,如果不用 \b 会把文中的 1 和 2 也匹配出来。 8....(regexp|substr, newSubStr) 将 String 对象内匹配到的 regexp 替换成 newSubStr,返回新字符串,原字符串不变。...str.split(regexp [,limit]) 使用regexp描述的分隔符将一个 String 对象分割成字符串数组。

3.6K20

2020年度总结了这 50 道 MySQL 高频面试题!

Create table size(name ENUM('Smail,'Medium','Large'); 10、如何定义REGEXPREGEXP是模式匹配,其中匹配模式在搜索值的任何位置。...以下是Mysql中可用的驱动程序: PHP驱动程序 JDBC驱动程序 ODBC驱动程序 CWRAPPER PYTHON驱动程序 PERL驱动程序 RUBY驱动程序 CAP11PHP驱动程序 Ado.net5...、LIKE和REGEXP操作有什么区别? LIKE和REGEXP运算符用于表示^和%。...如果想输入字符为十六进制数字,可以输入带有单引号的十六进制数字和前缀(X),或者只用(Ox)前缀输入十六进制数字。 如果表达式上下文是字符串,则十六进制数字串将自动转换为字符串。...NOW()命令用于显示当前年份,月份,日期,小时,分钟和秒。 CURRENT_DATE()仅显示当前年份,月份和日期。 46、什么样的对象可以使用CREATE语句创建?

4K20

数据库之运算符详解

1、等于运算符 等于运算符用来判断数字、字符串和表达式是否相等,如果相等,则返回值为1,否则返回值为0,如果有一个值是NULL,则比较结果是NULL。...9、REGEXP 1)REGEXP运算符用来匹配字符串,如果匹配则返回1,如果不匹配则返回0; 2)REGEXP 使用以下几种通配符: '^':用于匹配以什么开头的字符串; '$':用以匹配以什么结尾的字符串...:用于匹配在方括号内的任何字符; '*'用于匹配零个或多个在它前面的字符; mysql> select 'ssky' regexp '^s','ssky' regexp 'y$','ssky' regexp...6、位取反运算符(~) 将对应的二进制数逐位反转,即 1 取反后变 0 ,0 取反后变 1。 mysql> select 5 &~1; ?...关于上述的返回值解释:SQL语句是将5和进行位取反数字1进行位与运算(&),位于运算的原则是对应的二进制位都位1,则该位为1,否则为0,5的二进制数为0101,1的二进制数为0001,1进行位取反后的值就是

1.5K20

正则表达式工具上线【附正则相关知识】

正则表达式学习 这里推荐阅读菜鸟教程:https://www.runoob.com/regexp/regexp-tutorial.html 网上很多文字教程,但是初学者都会看的模模糊糊的,所以建议结合视频学习...【视频可在慕课和B站找寻】 定界符 正则表达式语句需要由分隔符(定界符)闭合包裹,分隔符可以使任意非字母数字, 非反斜线, 非空白字符 经常使用的分隔符是正斜线(/), hash符号(#) 以及取反符号...元字符 元字符 说明 范围 \d 匹配任意一个数字 [0-9] \D 与除了数字以外的任何一个字符匹配 [^0-9] \w 与任意一个英文字母,数字或下划线匹配 [a-zA-Z_0-9] \W 除了字母...符号 说明 ^ 匹配字符串的开始 $ 匹配字符串的结束,忽略换行符 以上参考自:[http://houdunren.gitee.io/note/php/5%20正则表达式.html](http://...houdunren.gitee.io/note/php/5 正则表达式.html)

52400

Js正则Replace方法

JS正则的创建有两种方式: new RegExp() 和 直接字面量。...//使用RegExp对象创建 var regObj = new RegExp("(^\s+)|(\s+$)","g"); //使用直接字面量创建 var regStr = /(^\s+)|(\s+$...比如 [a-zA-Z0-9] 表示字符文本要匹配英文字符和数字。 {}一般用来表示匹配的长度,比如 \d{3} 表示匹配三个空格,\d[1,3]表示匹配1~3个空格。...三、^ 和 $ ^ 匹配一个字符串的开头,比如 (^a) 就是匹配以字母a开头的字符串 $ 匹配一个字符串的结尾,比如 (b$) 就是匹配以字母b结尾的字符串 ^ 还有另个一个作用就是取反,比如[^xyz...] 表示匹配的字符串不包含xyz 需要注意的是:如果^出现在[]中一般表示取反,而出现在其他地方则是匹配字符串的开头 四、\d  \s  \w  .

11.8K100

MySQL算术比较逻辑位运算符与正则全解

位运算符 按位与运算符 按位或运算符 按位异或运算符 按位取反运算符 按位右移运算符 按位左移运算符 5....如果等号两边的值一个是整数,另一个是字符串,则MySQL会将字符串转化为数字进行比较。如果字符串不能隐式地转为数字,则会等价数字0。...SELECT 1 ^ 10, 20 ^ 30; 示例: SELECT 12 & 5, 12 | 5,12 ^ 5 FROM DUAL; 按位取反运算符 按位取反(~)运算符将给定的值的二进制数逐位进行取反操作...# 由于按位取反(~)运算符的优先级高于按位与(&)运算符的优先级,所以10 & ~1,首先,对数字1进行按位取反操作,结果除了最低位为0,其他位都为1,然后与10进行按位与操作,结果为10。...在fruits表中,查询f_id字段中包含字母ae和数字12以外字符的记录,SQL语句如下: SELECT * FROM fruits WHERE f_id REGEXP '[^a-e1-2]'; 使用

3.7K30

MySQL(六)之MySQL常用操作符

3.2、实例     1)等号”=”用来判断数字、字符串和表达式是否相等。如果相等,返回值为1,否则返回值为0。...=’用于判断数字、字符串、表达式不相等的判断。如果不相等,返回值为1;否则返回值为0。这两个运算符不能用于判断空值NULL。 select 'good''good',12,4!=5,5.5!...[a-z]”匹配任何字母,而”[0-9]”匹配任何数字。       (5) ‘*’匹配0个或多个在它前面的字符。  ...select 'ssky' REGEXP '^s','ssky' REGEXP 'y$','ssky' REGEXP '.sky','ssky' REGEXP '[ab]'; 三、逻辑运算符   3.1...~       位取反运算的实质是将参与运算的数据,按对应的二进制数逐位反转,即1取反后变成0,0取反变成1。

1.5K80

从今天起开启对正则表达式的学习

,我看看下RegExp的原型对象 console.log(RegExp.prototype) 输出 我们重点看test()和exec()这个方法 正则表达式内置方法test() RegExp.prototype.test...f /\f/ 换页符 a /\a/ alert字符 e /\e/ escape字符 cX /\cX/ 与X相对应的控制字符 b /\b/ 与回退字符 v /\v/ 垂直制表符 0 /\0/ 空字符 取反...前面加个元字符进行取反,表示匹配不能为括号里面的字符。...:除了换行和回车之外的任意字符, d:数字字符 D: 非数字字符 s: 空白字符 S:非空白字符 w: 单词字符(所有的字母)⚠️包含下划线_ W: 非单词字符...出现一次或无限多次(至少一次) {n}:对应零次或者n次 {n,m}:至少出现n次但不超过m次 {n,}:至少出现n次(+的升级版) 边界 ^:开头 ⚠️注意不能紧跟于左中括号的后面,在左中括号的后面就是取反

50220

php 不用字母,数字和下划线写 shell

例如非数字字母的 PHP 后门 两个写法性质一样 结果会输出: ss 不用数字构造出数字 利用了 PHP 弱类型特性,true 的值为 1,故 true+true==2。...php $_++; print($_); ?> 结果会输出:1 不用数字和字母的 shell 在讲不用数字,字母和下划线写 shell 之前,先了解下不用数字和字母写 shell。...非字母、数字的字符取反出字母 利用的是 UTF-8 编码的某个汉字,将其中的某个字符取出来,取反为字母。一个汉字的 utf8 是三个字节,{2} 表示第 3 个字节 <?...这里相当于直接把 utf8 编码的某个字节提取出来统一进行取反php 递增/递减运算符 这种方法很明显的缺点就是需要大量的字符。 ?

2.5K10

第四章《MySQL的数据类型和运算符》

3.日期时间类型; (1)MySQL有多重表示日期的数据类型,比如:当只记录年份信息时,可以使用YEAR类型,而没有必要使用DATE类型; (2)每一个类型都有合法的取值范围,当数据是不合法的值时,...REGEXP : (1)REGEXP 运算符用来匹配字符串,如果匹配返回1,如果不匹配返回0; (2)REGEXP 使用的几种通配符; ‘^’ 用来匹配以什么开头的字符串; ‘$’ 用来匹配以什么结尾的字符串...4.位运算符: 运算符 作用 | 位或 & 位与 ^ 位异或 << 位左移 >> 位右移 ~ 位取反 1.位或运算符(|):多个操作数对应的二进位有一个或多个1,则该位的运算结果为1,否则为...0; 4.位左移(<<):将一个值的二进制位上的1向左移动指定的位数 5.位右移(>>):使一个数值的二进制位上的1往右移动指定的单位,左边被移走的1用0来补充,右边被移出边界的1被舍弃 6.位取反...(~):将对应的二进制数逐位取反(1变为0,0变为1); 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/101974.html原文链接:

96610

第四章《MySQL的数据类型和运算符》

浮点数相对于定点数的有点是在长度一定的情况下,浮点数能够表示更大的数据范围(取值范围更大),他的缺点是会引起精度的问题 3.日期时间类型; (1)MySQL有多重表示日期的数据类型,比如:当只记录年份信息时...、2、3、4、5、6来表示这七天,那么多下来的数字该怎么办呢?...,包括零字符:‘_’只能匹配单个字符; REGEXP : (1)REGEXP 运算符用来匹配字符串,如果匹配返回1,如果不匹配返回0; (2)REGEXP 使用的几种通配符; ‘^...0; 4.位左移(<<):将一个值的二进制位上的1向左移动指定的位数 5.位右移(>>):使一个数值的二进制位上的1往右移动指定的单位,左边被移走的1用0来补充,右边被移出边界的1被舍弃 6.位取反...(~):将对应的二进制数逐位取反(1变为0,0变为1);

83920
领券