字符串和正则表达式踩坑

    // 中石化加油卡号格式:以 100011 开头共19位public static final String ZHONGSHIYOU_OIL_CARD_PATTERN = "^100011\\d{13}$";// 中石油加油卡号格式:以90、95、70开头共16位public static final String ZHONGYOU_OIL_CARD_PATTERN = "^(90|95|70)\\d{14}$";public static boolean checkOilCardNumber(String cardNumber) {// 使用正则表达式检查加油卡号是否符合规定return OrderProductConst.ZHONGSHIYOU_OIL_CARD_PATTERN.equals(cardNumber) || OrderProductConst.ZHONGYOU_OIL_CARD_PATTERN.equals(cardNumber);}public static void main(String[] args) {System.out.println(checkOilCardNumber("9501234567890123"));}

上面代码输出 false

将 equals 改成 matchers 也是false

    // 中石化加油卡号格式:以 100011 开头共19位public static final String ZHONGSHIYOU_OIL_CARD_PATTERN = "^100011\\d{13}$";// 中石油加油卡号格式:以90、95、70开头共16位public static final String ZHONGYOU_OIL_CARD_PATTERN = "^(90|95|70)\\d{14}$";public static boolean checkOilCardNumber(String cardNumber) {// 使用正则表达式检查加油卡号是否符合规定return OrderProductConst.ZHONGSHIYOU_OIL_CARD_PATTERN.matcher(cardNumber) || OrderProductConst.ZHONGYOU_OIL_CARD_PATTERN.matcher(cardNumber);}public static void main(String[] args) {System.out.println(checkOilCardNumber("9501234567890123"));}

将matchers 两个参数换了位置 就输出 true

  public static boolean checkOilCardNumber(String cardNumber) {// 使用正则表达式检查加油卡号是否符合规定return cardNumber.matches(OrderProductConst.ZHONGSHIYOU_OIL_CARD_PATTERN)|| cardNumber.matches(OrderProductConst.ZHONGYOU_OIL_CARD_PATTERN);}public static void main(String[] args) {System.out.println(checkOilCardNumber("9501234567890123"));}

查看源码:

matchers 方法需要将字符串应该是调用方

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/39355.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 urllib OpenSSL 时遇到的问题及解决

题意: ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1, currently the ssl module is compiled with LibreSSL 2.8.3 当前使用的 urllib3 版本(v2.0)仅支持 OpenSSL 1.1.1 或更高版本,但你的 Python 环境中的 ssl 模块…

安装opencv-python出错,怎么办?

安装opencv-python出错 解决方法: 具体版本号,python3.6对应的就是4.3.0.38 pip install opencv-python4.3.0.38 -i https://pypi.tuna.tsinghua.edu.cn/simple

《梦醒蝶飞:释放Excel函数与公式的力量》8.5 COUNTIFS函数

8.5 COUNTIFS函数 COUNTIFS函数是Excel中的一种多条件计数函数,用于统计同时满足多个条件的单元格数量。它是COUNTIF函数的增强版,允许在一个函数中使用多个条件。 8.5.1 函数简介 COUNTIFS函数用于统计符合多个条件的单元格数量。它在数据分析中非常…

opencv学习总结

Mat类学习 Opencv中的数据类型与我们常用的数据类型的一一对应关系:Mat_<uchar>->CV_8U;Mat_<char>->CV_8S;Mat_<short>->CV_16S;Mat_<ushort>->CV_16U;Mat_<int>->CV_32S;Mat_<float>->CV_32F;Mat_<double>-&g…

Sentinel链路流控模式失效的解决方法

解决方法 1、在pom.xml中增加sentinel-web-servlet的依赖&#xff0c;我使用的版本是1.7.1 <dependency><groupId>com.alibaba.csp</groupId><artifactId>sentinel-web-servlet</artifactId> </dependency>2、在项目中添加一个FilterCon…

uniapp应用如何实现传感器数据采集和分析

UniApp是一种跨平台的应用开发框架&#xff0c;它支持在同一份代码中同时开发iOS、Android、H5等多个平台的应用。在UniApp中实现传感器数据采集和分析的过程可以分为以下几个步骤&#xff1a; 引入相关插件或库 UniApp通过插件或库的形式扩展功能。对于传感器数据采集和分析&…

1679. K 和数对的最大数目

1679. K 和数对的最大数目 题目链接&#xff1a;1679. K 和数对的最大数目 代码如下&#xff1a; class Solution { public://双指针法int maxOperations(vector<int>& nums, int k) {if(nums.size()<1) return 0;sort(nums.begin(),nums.end());int res0;int…

MySQL 9.0 GA 来了!

2024 年 7 月 2 日&#xff0c;MySQL 9.0 GA 版本正式发布。还记得 MySQL 8.0 版本正式发布于 2018 年 4 月 19 日&#xff0c;中间经过了 6 年之久&#xff0c;MySQL 官方终于发布了大版本号变更得 9.0 版本&#xff0c;接下来由我给大家介绍 MySQL 在 9.0 版本中有哪些新的变…

C++学习笔记---POCO库

在Windows系统中安装POCO 1&#xff09;安装OpenSSL POCO编译安装依赖OpenSSL&#xff0c;如果未安装OpenSSL则应该先安装OpenSSL。 假设将OpenSSL安装在C:\OpenSSL-Win64&#xff0c;将C:\OpenSSL-Win64、C:\OpenSSL-Win64\lib添加到PATH环境变量中2&#xff09;安装POCO 将p…

C++11新特性【下】{lambda表达式、可变模板参数、包装器}

一、lambda表达式 在C98中&#xff0c;如果想要对一个数据集合中的元素进行排序&#xff0c;可以使用std::sort方法。如果待排序元素为自定义类型&#xff0c;需要用户定义排序时的比较规则&#xff0c;随着C语法的发展&#xff0c;人们开始觉得上面的写法太复杂了&#xff0c…

深入理解Git:checkout的本质与原理深度解析

在Git的版本控制世界中&#xff0c;checkout是一个极其重要且功能丰富的命令&#xff0c;它贯穿于日常开发的各个环节。然而&#xff0c;随着Git版本的更新迭代&#xff0c;checkout的功能逐渐被新的命令如switch和restore所分解&#xff0c;但这并不妨碍我们深入理解其本质与原…

#练习 #综合 LinuxC高级

一、选择题 1.常见的Linux发行版本有很多&#xff0c;下面不是Linux发行版本的是( ) A. Red Hat Linux B. Ubuntu Linux C.X Window D.SuSE Linux 答案 2.下面不是对Linux操作系统特点描述的是( ) A.良好的可移植性 B.单用户 C.多用户 D.多任务 答案…

1-讯飞星火大模型API调用示例解析

1官网链接 比赛官网&#xff1a;2024 iFLYTEK A.I.开发者大赛-讯飞开放平台 (xfyun.cn)&#xff1b;控制台官网&#xff1a;控制台-讯飞开放平台 (xfyun.cn)&#xff1b; 2星火模型python调用示例 示例链接&#xff1a;https://xfyun-doc.xfyun.cn/lc-sp-PythonDemo-17163704…

了解MySQL【事务】的功能:确保数据完整性的关键技术

在数据库管理中&#xff0c;事务是确保数据完整性和一致性的核心机制。特别是对MySQL这样广泛应用的开源数据库系统&#xff0c;掌握事务的使用至关重要。在这篇文章中&#xff0c;我们将全面探讨MySQL事务的工作原理、ACID属性、隔离级别以及最佳实践&#xff0c;从而帮助开发…

宝塔Linux面板配置环境 + 创建站点

一、安装 &#xff08;1&#xff09;进入宝塔官网 https://www.bt.cn/new/index.html &#xff08;2&#xff09;点击“ 立即免费安装 ”&#xff0c;选择 Centos安装脚本 &#xff08;3&#xff09;进入 ssh 输入以下命令安装宝塔 yum install -y wget && wget -O …

实验三 SQL Server SSMS工具添加数据

1、打开ecommerce数据库&#xff0c;向表中分别录入以下数据信息 &#xff08;1&#xff09;商品类别表category catno catname describe 101 手机 各种品牌、型号手机 201 激光打印机 各种激光打印机 202 喷墨打印机 各种喷墨打印机 301 平板电脑 各种平板电脑…

Python后端面试题

1. 文件操作w和r的区别 在Python中&#xff0c;文件操作模式中的w和r都表示对文件的读写操作&#xff0c;但它们在打开文件时的行为有所不同&#xff1a; r模式&#xff1a; 读写&#xff1a;这种模式允许你同时读取和写入文件。文件必须已经存在&#xff0c;否则会抛出一个Fi…

思看科技募资额骤降:对赌压力下巨额分红,还购买 7项商业房产

《港湾商业观察》施子夫 6月11日&#xff0c;证监会网站披露思看科技&#xff08;杭州&#xff09;股份有限公司&#xff08;以下简称&#xff0c;思看科技&#xff09;的首轮审核问询函回复意见并更新2023年财务数据&#xff0c;继续推进上市进程。 公开信息显示&#xff0c…

低空经济背景下的无人机人才培养

无人机作为低空经济的重要组成部分&#xff0c;其技术的进步和应用的拓展直接推动了低空经济的快速发展。无人机以其高效、灵活、低成本的特点&#xff0c;在多个领域发挥了重要作用&#xff0c;成为推动低空经济发展的重要力量。 无人机人才培养的重要性 随着无人机应用的不…

深度之眼(二十九)——神经网络基础知识(四)-循环神经网络

文章目录 一、 学习目标二、序列数据三、语言模型四、循环神经网络4.1 RNN的反向传播 五、门控循环单元-GNU5.1 候选隐藏状态 六、长短期记忆网络-LSTM七、回顾 一、 学习目标 二、序列数据 序列数据是常见的数据类型&#xff0c;前后数据通常具有关联性 三、语言模型 综合…