c_cpp 计算模式的匹配

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 计算模式的匹配相关的知识,希望对你有一定的参考价值。

bool is_match(string &s, const string &p) {
    if(s.empty() || p.empty()) return false;
    int ns = s.size(), np = p.size();
    if(ns < np) return false;
    int i = 0;
    while(i < np) {
        if(s[i] != p[i]) return false;
        i++;
    }
    return true;
}
int count_match(string &s, const string &p) {
    if(s.empty()) return 0;
    if(p.empty()) return 0;
    int ns = s.size(), np = p.size();
    if(ns < np) return 0;
    
    int i = 0;
    int count = 0;
    while(i < ns) {
        string sub = s.substr(i);
        if(is_match(sub, p)) {
            count++;
        }
        i++;
    }
    return count;
}

以上是关于c_cpp 计算模式的匹配的主要内容,如果未能解决你的问题,请参考以下文章

c_cpp 编写一个函数来检查给定字符串是否与给定模式匹配为非连续子字符串:即,模式中的所有字符

如何计算匹配模式的键数?

c_cpp 串的匹配算法和KMP算法

c_cpp C中的字符串匹配对象方法

检查目录是不是存在并计算与其中模式匹配的文件[重复]

c_cpp CV - 使用随机样本共识(RANSAC)匹配图像。