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

【2023】华为OD机试真题Java CC++ Python JS Go-题目0257-增强的strstr

题目0257-增强的strstr

题目描述

C 语言有一个库函数: char *strstr(const char *haystack, const char *needle) ,实现在字符串 haystack 中查找第一次出现字符串 needle 的位置,如果未找到则返回 null

现要求实现一个strstr的增强函数,可以使用带可选段的字符串来模糊查询,与strstr一样返回首次查找到的字符串位置。

可选段使用 [] 标识,表示该位置是可选段中任意一个字符即可满足匹配条件。比如 a[bc] 表示可以匹配abac

注意目标字符串中可选段可能出现多次。

输入描述

strstr函数一样,输入参数是两个字符串指针,分别是源字符串和目标字符串。

输出描述

strstr函数不同,返回的是源字符串中,匹配子字符串相对于源字符串地址的偏移(从0开始算),如果没有匹配返回-1

补充说明:源字符串中必定不包含[];目标字符串中[]必定成对出现,且不会出现嵌套。

输入的字符串长度在[1,100]之间。

示例一

http://www.lryc.cn/news/110766.html

相关文章:

  • Android 解析ping回复包
  • 在外地ssh远程连接家里ubuntu服务器(Coplar内网穿透)
  • windows创建占用特定端口程序
  • 【uniapp 定位获取详细位置】
  • 后端进阶之路——万字总结Spring Security与数据库集成实践(五)
  • mysql8查看执行sql记录历史,配置开启sql历史日志general_log
  • git 版本控制与合并
  • 【力扣】23. 合并 K 个升序链表 <链表指针、堆排序、分治>
  • 微信小程序真机防盗链referer问题处理
  • SpringBoot集成Redisson实现延迟队列
  • 思想道德与法治
  • vue3登录页面
  • SK5代理与IP代理:网络安全守护者的双重防线
  • 线程间的同步、如何解决线程冲突与死锁
  • 8.4一日总结
  • 【面试】某公司记录一次面试题
  • 215. 数组中的第K个最大元素(快排+大根堆+小根堆)
  • Ubuntu18.04配置ZED_SDK 4.0, 安装Nvidia显卡驱动、cuda12.1
  • 张量Tensor 深度学习
  • 用Rust实现23种设计模式之桥接模式
  • 扩散模型实战(一):基本原理介绍
  • 解决npm ERR! code ERESOLVE -npm ERR! ERESOLVE could not resolve
  • HttpServletRequest和HttpServletResponse的获取与使用
  • css在线代码生成器
  • 在java中如何使用openOffice进行格式转换,word,excel,ppt,pdf互相转换
  • 手机变电脑2023之虚拟电脑droidvm
  • HDFS中的sequence file
  • 【MySQL】检索数据使用数据处理函数
  • 【嵌入式学习笔记】嵌入式入门6——定时器TIMER
  • GD32F103输入捕获