/****************************************
字符串匹配问题:字符“*”可代表任意多个的任意字符。
输入:一个不带“*”的字符串和一个通配字符串
输出:如果匹配,则输出“Matched”;否则,输出“Not Matched”
举例:
例1: 例2: 例3: 例4: 例5:
abcdef abcdef abcdef abcdef abcdef
abc*f a** *f *d*f *d
Matched Matched Matched Matched Not Matched !
*****************************************/
#include "Match.h"
void StringMatch(char* srcString, char* matchString)
{
int nSrcLen = strlen(srcString);
int nCnt = 0;
char* matchTemp = matchString;
while(*srcString != 0)
{
if(*matchTemp == '*')//根据*代替需要匹配的字符
{
if(*(matchTemp+1) == '*')
{
++matchTemp;
}
if(*(matchTemp+1) != 0 && *srcString == *(matchTemp+1))
{
matchTemp += 2;
if(*matchTemp == 0)
{
++nCnt;
break;
}
}
++srcString;
if(*srcString == 0 && *(matchTemp+1) != 0)
{
break;
}
++nCnt;
}else
{
if(*srcString == *matchTemp)
{
++matchTemp;
if(*matchTemp == 0)
{
break;
}
++nCnt;
}
++srcString;
}
}
if(nCnt == nSrcLen)
{
cout << "Matched" << endl;
}else
{
cout << "Not Matched" << endl;
}
}
分享到:
- 2009-05-29 19:04
- 浏览 1184
- 评论(1)
- 论坛回复 / 浏览 (0 / 1459)
- 查看更多
相关推荐
在IT领域,字符串匹配是计算机科学中的一个基本问题,尤其在文本处理、数据搜索和模式识别等场景中广泛应用。带通配符的字符串匹配算法则是这个领域的延伸,它允许在模式字符串中包含特殊字符,如星号(*)或问号(?),...
C#中文文本匹配,字符串匹配,中文词语匹配,计算2个句子相似度 中文匹配C#中文文本匹配,字符串匹配,中文词语匹配,计算2个句子相似度 C#中文文本匹配,字符串匹配,中文词语匹配,计算多个句子相似度 C#中文文本...
2. **并行字符串匹配**:在CUDA中实现字符串匹配,关键在于如何有效地分布数据和任务。通常,可以将目标字符串和模式字符串分布在GPU的不同线程块和线程中,每个线程负责一部分匹配工作。例如,在KMP算法中,每个...
C++ 字符串匹配 C++ 的字符串匹配是计算机科学中非常重要的一部分,它在许多领域都有广泛的应用,如数据压缩、模式识别、文本编辑等。在这一篇文章中,我们将详细介绍 C++ 中的字符串匹配算法,主要包括 Brute ...
在本课程设计中,我们聚焦于一个特定的应用场景:字符串匹配。字符串匹配是计算机科学中一个基础但至关重要的问题,广泛应用于文本处理、搜索引擎、数据安全等领域。在汇编语言中实现字符串匹配,能帮助我们深入理解...
在深入探讨柔性字符串匹配这一主题之前,我们先来理解一下其基本概念与应用场景。字符串匹配是计算机科学中的一个核心问题,涉及到在一段文本(主字符串)中查找一个或多个模式(子字符串)的过程。传统的字符串匹配...
【标题】:“Horspool字符串匹配输入增强技术” 在计算机科学中,字符串匹配是一个重要的算法问题,广泛应用于文本处理、搜索引擎、病毒扫描等领域。Horspool字符串匹配算法是一种高效的线性时间复杂度的字符串查找...
根据提供的信息,《PDF电子书《柔性字符串匹配》》主要探讨了与字符串匹配相关的算法知识。字符串匹配是计算机科学中的一个核心问题,在文本处理、搜索引擎、生物信息学等多个领域都有着广泛的应用。下面将从不同的...
在处理字符串匹配问题时,汇编语言能够提供极高的效率和精确的控制。"汇编语言字符串匹配问题"这个主题涉及到的是如何在汇编程序中实现对两个字符串进行比较,判断它们是否相等或者一个字符串是否为另一个的子串。 ...
### 入侵检测技术中一种改进的字符串匹配算法的研究 #### 概述 随着网络环境的日益复杂化,网络攻击事件频繁发生,如何有效监测和响应这些潜在威胁成为了网络安全领域的重要课题。入侵检测系统(IDS)作为网络安全...
### KMP字符串匹配算法 #### 一、简介 KMP(Knuth-Morris-Pratt)算法是一种高效的字符串搜索算法,由Donald Knuth、James H. Morris和Vaughan Pratt三位计算机科学家共同提出。该算法的主要优点在于它能够有效地...
字符串匹配是计算机科学中一个基础且重要的问题,广泛应用于文本搜索、数据分析等领域。在这个主题中,我们将探讨三种经典的字符串匹配算法:穷举法、KMP(Knuth-Morris-Pratt)算法和BM(Boyer-Moore)算法。 1. *...
在这个“有穷自动机字符串匹配小软件”中,开发者利用了这一概念来实现高效的字符串查找功能。VC++是Microsoft开发的一款集成开发环境,常用于编写Windows平台的应用程序,此处显然被用来开发这个小软件。 字符串...
在IT行业中,字符串匹配是计算机科学的一个重要领域,特别是在编程语言如Swift和Objective-C(OC)中。这里我们将深入探讨标题和描述中提到的“KMP匹配”和“AC多模字符串匹配”,以及它们在Swift开发中的应用。 ...
字符串匹配是计算机科学中的一种基本问题,涉及到对文本数据的搜索和分析。在这个问题中,目标是找出一个较长的字符串(匹配串)中是否存在一个较短的子串(模式串)。这里我们将深入探讨几种常见的字符串匹配算法,...
本文将深入探讨在安卓2.2到5.1.1版本中如何进行字符串匹配与截取,并提供相关的函数说明。 首先,让我们从字符串匹配开始。在安卓中,最常用的字符串匹配方法是使用正则表达式。`java.util.regex`包提供了`Pattern`...
字符串匹配是计算机科学中一个基础且重要的问题,广泛应用于文本处理、搜索引擎、数据挖掘等领域。在C语言中,实现字符串匹配算法通常涉及到对字符数组的操作和逻辑控制结构。本篇文章将详细探讨四种常见的字符串...
汇编语言课程设计--字符串匹配 本课程设计的主要目的是为了让学生增进对汇编语言的认识,加强用汇编语言编程的能力,掌握汇编语言的中断调用功能的应用,并了解和掌握汇编语言程序设计过程、方法及实现。课程设计的...