正则表达式匹配
August 8, 2018 · View on GitHub
给定一个输入字符串s和一个模式p,实现正则表达式匹配的支持.和*.
.匹配任何单个字符.*匹配前面元素的零个或多个.
匹配应涵盖整个输入字符串 (不是部分) .
注意
s可能是空的,只包含小写字母a-z.p可能是空的,只包含小写字母a-z和.要么*.
例子
示例#1
输入:
s = 'aa'
p = 'a'
输出: false
说明: a与aa整个字符串不匹配.
例#2
输入:
s = 'aa'
p = 'a*'
输出: true
说明: *表示前面元素中的零个或多个a. 因此,通过重复a一旦它变成了aa.
例#3
输入:
s = 'ab'
p = '.*'
输出: true
说明: .*意思是"零或更多(*) 的 任何角色 (.)".
例#4
输入:
s = 'aab'
p = 'c*a*b'
输出: true
说明: c可以重复0次,a可以重复1次. 因此它匹配aab.