华为OJ 初级:字符串通配符
2016-07-29 15:45
183 查看
描述 | 问题描述:在计算机中,通配符一种特殊语法,广泛应用于文件搜索、数据库、正则表达式等领域。现要求各位实现字符串通配符的算法。 要求: 实现如下2个通配符: *:匹配0个或以上的字符(字符由英文字母和数字0-9组成,不区分大小写。下同) ?:匹配1个字符 输入: 通配符表达式; 一组字符串。 输出: 返回匹配的结果,正确输出true,错误输出false |
---|---|
知识点 | 字符串 |
运行时间限制 | 10M |
内存限制 | 128 |
输入 | 先输入一个带有通配符的字符串,再输入一个需要匹配的字符串 |
输出 | 返回匹配的结果,正确输出true,错误输出false |
样例输入 | te?t*.* txt12.xls |
样例输出 | false |
/*使用正则表达式进行匹配 * 先将输入的字串全部转换成大写或者小写 * 然后将str1写成正则表达式的字串与str2进行匹配,如果能够匹配则返回true * */ import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); String str1 = sc.next().toLowerCase(); String str2 = sc.next().toLowerCase(); sc.close(); str1 = str1.replace("*", "\\w*"); str1 = str1.replace("?", "\\w{1}"); if(str2.matches(str1)) System.out.println("true"); else System.out.println("false"); } }
相关文章推荐
- 0729 Activity之startActivityForResult
- poj2406Power Strings
- 项目svn从一个地址换到了另一个地址, 现在需要把项目关联到另一个svn地址上
- 浅谈 android mvp 模式的使用
- linux安装maven
- 经典报错bug
- UIButton设置title在下,image在上
- 关于第三方支付企业架构
- Android 中的事件分发和处理
- Android EventBus源码解析 带你深入理解EventBus
- linux代码风格
- Nginx+Tomcat负载均衡配置
- [Android]FloatingText仿点赞+1等效果
- ubuntu/var/log/下各个日志文件
- poj3899 The Lucky Numbers 模拟+数学
- 使用 gcc 和 CMake 编译简单的 OpenCV 程序
- 1096. Consecutive Factors (20)
- 初体验AutoLayout(一)
- Android OpenGL显示任意3D模型文件
- jetty for linux 启用日志