avatar
cpu一般啥时候打折呀?# Hardware - 计算机硬件
r*r
1
有点像 regular expression 匹配,但更复杂一些。
给定字符串 Pattern 和待匹配的字符串 S1 & S2:
P = "ABC[l, m] * XYZ[n]"
S1 = "abc ABC[l, z] AB[x] XYZ[n]"
S2 = "abc ABC[m, l] AB[x] XYZ[n]"
其中括号中的 l, m, n, x 分别为其字符的属性。 比如,ABC[l,z] 表示字符串 “ABC
” 具有属性 "l" & "z".
其中,match 的条件为:
1)主字符匹配,比如, "ABC" 必须匹配 “ABC”
2)如果主字符匹配,其属性必须匹配,比如 [l, m] 可以匹配 [m, l],属性的所列顺
序无关。
所以,上面的 P math S2, 但是不 match S1. 如果 match succeed, 打印出所 match
的部分。上面的例子中,应打印出 "ABC[m, l] AB[x] XYZ[n]".
其中的星号 “*”, 表示“一个或多个字符”。
如果去掉其属性匹配部分,就成了一个字符串匹配的问题。请问,这类问题,有什么常
见的解法吗?
avatar
G*Y
3
问问。
avatar
m*q
4
因为属性的所列顺序不影响匹配结果,把pattern和带匹配字符串
中的每个属性中的字符排序,转换成普通的字符串匹配
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。