当前位置: 首页 > news >正文

HJ71 字符串通配符

Powered by:NEFU AB-IN

Link

文章目录

  • HJ71 字符串通配符
    • 题意
    • 思路
    • 代码

HJ71 字符串通配符

  • 题意

    问题描述:在计算机中,通配符一种特殊语法,广泛应用于文件搜索、数据库、正则表达式等领域。现要求各位实现字符串通配符的算法。
    要求:
    实现如下2个通配符:
    :匹配0个或以上的字符(注:能被和?匹配的字符仅由英文字母和数字0到9组成,下同)
    ?:匹配1个字符
    注意:匹配时不区分大小写。

  • 思路

    正则表达式的运用

    • s1字符串进行替换操作,将其中的点(.)、问号(?)、和星号(*)分别替换为反斜杠+字符(.)、数字或小写字母字符的字符集([0-9a-zA-Z])、和井号(#)
    • 使用正则表达式替换,将连续的井号(#)替换为匹配零个或多个数字或字母字符的正则表达式模式[0-9a-zA-Z]*。这是为了将多个星号替换为一个匹配多个字符的正则表达式
    • if bool(re.fullmatch(s1, s2))::使用re.fullmatch()函数来尝试匹配s1和s2,如果匹配成功,就返回一个匹配对象,这个条件就为真。如果没有匹配,条件为假。
  • 代码

    import re
    while True:try:s1 = input().lower()s2 = input().lower()s1 = s1.replace('.', '\.').replace('?', '[0-9a-zA-Z]').replace('*','#')s1 = re.sub('#+','[0-9a-zA-Z]*',s1)if bool(re.fullmatch(s1, s2)):print('true')else:print('false')except:break
http://www.lryc.cn/news/161175.html

相关文章:

  • ffmpeg 开发笔记
  • 一种基于注意机制的快速、鲁棒的混合气体识别和浓度检测算法,配备了具有双损失函数的递归神经网络
  • [运维|系统] go程序设置开机启动踩坑笔记
  • CRC原理介绍及STM32 CRC外设的使用
  • Python 操作 Word
  • Linux--进程创建(fork)-退出--孤儿进程
  • LeetCode 热题 HOT 100:链表专题
  • Redis发布订阅
  • 在Windows操作系统上安装PostgreSQL数据库
  • 【云原生】Kubeadmin部署Kubernetes集群
  • Java中wait和notify详解
  • 算法竞赛个人注意事项
  • ClickHouse和Doris超大数据集存储
  • 02-Flask-对象初始化参数
  • 第5篇 vue的通信框架axios和ui框架-element-ui以及node.js
  • RabbitMQ 知识点解读
  • SimVODIS++: Neural Semantic Visual Odometry in Dynamic Environments 论文阅读
  • 7.Xaml Image控件
  • Solidity 小白教程:11. 构造函数和修饰器
  • 静态工厂模式,抽象工厂模式,建造者模式
  • 【动手学深度学习笔记】--门控循环单元GRU
  • 浅析linux异步io框架 io_uring
  • 访问者模式的一个使用案例——文档格式转换
  • 【MySql】数据库的聚合查询
  • Linux初探 - 概念上的理解和常见指令的使用
  • 苹果上架Guideline 4.3 - Design
  • 【数据分析入门】【淘宝电商API接入与电商数据分析】初识Web API(一)
  • 蓝桥杯官网练习题(李白打酒)
  • 聚类分析 | MATLAB实现基于SOM自组织特征映射聚类可视化
  • Spring AOP:面向切面编程在实际项目中的应用