題目
請實現乙個函式用來匹配包括』.『和』『的正規表示式。模式中的字元』.『表示任意乙個字元,而』'表示它前面的字元可以出現任意次(包含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...