RegExp DEMO version -- [3]核心函数(7)dealState()

作者在 2007-06-03 06:34:00 发布以下内容
                     case REPEAT_RANGE_M_MORE:
                         /*(A{m,})*/
                         pst_needed = repeatMachine_needed(g_repeat_m-1, pmnew);
                         if (pst_needed != NULL) {
                             g_st = joinStateTable(g_st, pst_needed);
                             pst_needed->head = NULL;
                             pst_needed->tail = NULL;
                             pst_needed->curState = NULL;
                             destroyStateTable(pst_needed);
                         }
                         /*做一个(A*)*/
                         psnew = g_st->curState; /*保存当前状态*/
                         pst_optional = repeatMachine_optional(1, pmnew);    /*做一个(A?)*/
                         if (pst_optional != NULL) {
                             g_st = joinStateTable(g_st, pst_optional);
                             pst_optional->head = NULL;
                             pst_optional->curState = NULL;
                             pst_optional->tail = NULL;
                             destroyStateTable(pst_optional);
                         }
                         psnew = psnew->next;     /*最后一次重复运算的开始状态*/
           &nbs
C语言 | 阅读 2026 次
文章评论,共0条
游客请输入验证码