含有萬用字元的字串匹配

2021-07-04 02:15:20 字數 537 閱讀 4405

字串匹配問題,給定兩個字串,求字串2,在字串1中的最先匹配結果。字串2中可以存在'*'符號,且該符號可以代表任意字元,即字串2中存在萬用字元。

e.g. 輸入:abcdefghabef, a*f 輸出:abcdef

#include #include using namespace std;

bool match(const string &s1,const string &s2,string &result)

if(s1[i]==s2[i])//如果相等,則匹配了乙個元素,接著依次匹配下乙個元素

else if(s2[i]=='*')//如果遇到*號,則跳過*號,匹配s2的其他元素

else//如果s1和s2的第乙個元素不相等,則匹配s1的下乙個元素 }

int main()

{ string s1="abcdefghabef";

string s2="a*f";

string result;

match(s1,s2,result);

cout<

參考

含有萬用字元的字串匹配

字串匹配問題,給定兩個字串。求字串2。在字串1中的最先匹配結果。字串2中能夠存在 符號,且該符號能夠代表隨意字元,即字串2中存在萬用字元。e.g.輸入 abcdefghabef,a f 輸出 abcdef include include using namespace std bool match ...

萬用字元匹配字串

問題 實現支援?和 兩個萬用字元的字串匹配函式。implement wildcard pattern matching with support for and matches any single character.matches any sequence of characters inclu...

萬用字元的字串匹配演算法

1.簡述 題目描述 str1中可能包含的字元 除了 和 以外的任意字元。str2中可能包含的字元 任意字元。其中,表示匹配任意乙個字元,表示匹配任意字元0或者多次。給出這樣兩個字串,判斷str2是否是str1的子串,如果是輸出第乙個匹配到的子串,如果不是,輸出 不是子串 2.分析 對於 的處理,只要...