正規表示式匹配

2021-09-26 01:20:54 字數 887 閱讀 4014

題目

請實現乙個函式用來匹配包括』.『和』『的正規表示式。模式中的字元』.『表示任意乙個字元,而』'表示它前面的字元可以出現任意次(包含0次)。 在本題中,匹配是指字串的所有字元匹配整個模式。例如,字串"aaa"與模式"a.a"和"abaca"匹配,但是與"aa.a"和"ab*a"均不匹配。

解題思路

用字串去匹配模式,匹配上就把模式串往後移動繼續匹配,直到匹配串全部匹配完,如果字串還是沒用完,則說明匹配不成功,只有把模式串和字串全部匹配完才證明匹配成功。

源**

public class stringmatch ));

}private static boolean match(char str, char pattern)

/*** 字串匹配模式串

** @param str 字串

* @param i 字串中待匹配字元

* @param pattern 模式串

* @param j 模式串中待匹配字元

* @return 返回匹配結果

*/private static boolean match(char str, int i, char pattern, int j)

if (j < pattern.length - 1 && pattern[j + 1] == '*') else

}//沒有*的字串匹配

if (i < str.length && (str[i] == pattern[j] || pattern[j] == '.'))

return false;

}}

正規表示式 匹配

字串 void abtr quint32 ab 表示乙個正規表示式 template class bidirectionaliterator class allocator std allocator sub match bidirectionaliterator class match resul...

正規表示式匹配

請實現乙個函式用來匹配包括 和 的正規表示式。模式中的字元 表示任意乙個字元,而 表示它前面的字元可以出現任意次 包含0次 在本題中,匹配是指字串的所有字元匹配整個模式。例如,字串 aaa 與模式 a.a 和 ab ac a 匹配,但是與 aa.a 和 ab a 均不匹配 解法 首先要想到用遞迴處理...

正規表示式匹配

請實現乙個函式用來匹配包括 和 的正規表示式。模式中的字元 表示任意乙個字元,而 表示它前面的字元可以出現任意次 包含0次 在本題中,匹配是指字串的所有字元匹配整個模式。例如,字串 aaa 與模式 a.a 和 ab ac a 匹配,但是與 aa.a 和 ab a 均不匹配 class solutio...