OJ---字符串通配符
来源:互联网 发布:宁波大数据管理局 编辑:程序博客网 时间:2024/05/21 08:05
问题描述:?匹配任何(仅)一个字符,*匹配0或多个字符
样例输入:te?t*.* txt12.xls
样例输出:false
import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { String reg = scanner.nextLine(); String str = scanner.nextLine(); System.out.println(match(reg, str)); } scanner.close(); } private static boolean match(String reg, String str) { return match(reg, 0, str, 0); } private static boolean match(String reg, int i, String str, int j) { // 正则式已经到达末尾了 if (i >= reg.length()) { return j >= str.length(); } // 匹配串已经到达末尾了 if (j >= str.length()) { return i >= str.length(); } // 两个都没有到末尾 boolean result = false; switch (reg.charAt(i)) { case '*': // 匹配一(多)个字符 result = match(reg, i, str, j + 1); if (result) { return true; } // 不匹配字符 result = match(reg, i + 1, str, j); if (result) { return true; } // 只匹配一个字符 result = match(reg, i + 1, str, j + 1); break; case '?': result = match(reg, i + 1, str, j + 1); break; default: if (reg.charAt(i) == str.charAt(j)) { result = match(reg, i + 1, str, j + 1); } } return result; }}
0 0
- 华为oj 字符串通配符
- 华为oj 字符串通配符
- OJ---字符串通配符
- 华为OJ:字符串通配符
- 华为OJ:字符串通配符
- 字符串通配符(OJ)
- Huawei OJ-字符串通配符
- 华为OJ(字符串通配符)
- 华为OJ题库-字符串通配符
- 【华为OJ】【082-字符串通配符】
- 华为OJ 初级:字符串通配符
- 华为oj初级 字符串通配符
- Java算法--华为oj字符串通配符
- 华为OJ——字符串通配符
- 华为OJ——字符串通配符
- 字符串通配符
- 字符串通配符
- 字符串通配符
- Floyd-Warshall算法的应用——杭电OJ 1217 Arbitrage
- KMP之暴力匹配
- Android-Fragment生命周期
- Xshell4配色方案
- 天鹅、大虾和梭鱼--ruby的动态派发
- OJ---字符串通配符
- 初学android-自定义控件以及控件属性
- qt 文件操作
- 100岁老龙虾没有被吃掉,却死在营救途中
- Cocos2dx学习笔记(2)——精灵的创建
- ant
- mjpeg-stream实现树莓派网络监控
- java保留小数--四舍五入-- String.format()
- json对象