在windows下可否使用正则表达式解决思路

在windows下可否使用正则表达式
我的编译原理书上在unix下的例程在词法分析程序中使用了正则表达式,在看php时看过perl兼容的正则表达式,现在我想在window下实现这个词法分析程序,想用正则表达式,请大家说说如何使用,如果您有时间的话请给一段小的例程为好,谢谢

------解决方案--------------------
当然可以了,不过需要库的支持,boost就很不错
------解决方案--------------------
可以的, 有2个著名的库,一个是微软一个人写的,一个是boost里面那个

boost里面那个带一个2个的对比表格
------解决方案--------------------
看boost的regex的帮助文档就会用了。
------解决方案--------------------
boost::regex
------解决方案--------------------
http://www.phparticle.net/bbshtmldata/1/9/2004_08/C%CF%C2%B5%C4%D5%FD%D4%F2%B1%ED%B4%EF%CA%BD%B1%E0%B3%CC3290_1.html
C下的正则表达式编程:
///////////////////////////////////////////////////////////////////////////////
/// 功能说明 : 对单行进行匹配并返回匹配值
/// 输入参数 : szLine 行字符串
/// : szPattern 行模式
/// 输出参数 : szValue, 若不为NULL,则返回匹配值
/// 返回值 : bool
/// 使用说明 :
///////////////////////////////////////////////////////////////////////////////
bool StrMatchLine ( const char *szLine, const char *szPattern, char *szValue )
{
int nRet = 0, cFlags = 0; /// <
regex_t regVar; /// <
regmatch_t regMatch[1]; /// < 匹配结果
const size_t nMatch = 1; /// < 1 个MATCH
char szErr[256] = " "; /// < 错误信息

if ( szLine == NULL || szPattern == NULL )
return false;

nRet = regcomp ( &regVar, szPattern, cFlags );
if ( nRet != 0 )
{
regerror ( nRet, &regVar, szErr, sizeof(szErr) );
//TraceLog ( stdout, __LINE__, " ", __FILE__, "Pattern : %s, regcomp error %s ", szErr );
}

nRet = regexec ( &regVar, szLine, nMatch, regMatch, 0 );
if ( nRet == REG_NOMATCH) /// < 不匹配
{
regfree(&regVar);
return false;
}
else if ( nRet != 0 ) /// < 执行匹配出错
{
regerror ( nRet, &regVar, szErr, sizeof(szErr) );
//TraceLog ( stdout, __LINE__, " ", __FILE__, "Line %s, regexec error %sn ", szLine, szErr );
regfree(&regVar);
return false;
}

if ( szValue != NULL ) /// < 获取子字符串
{
int nLen = regMatch[0].rm_eo - regMatch[0].rm_so;
strncpy ( szValue, szLine + regMatch[0].rm_so, nLen );
szValue[nLen] = ' ';
}

regfree(&regVar); /// 释放正则表达式
return true;
}
正则表达式的写法去查查书,讲SHELL书上都有,UNIX强大的特性之一是文本匹配。
你问的是标准的C函数,差不多只能做到那样了。更强的匹配与复杂的抽取去用boost::regex。
------解决方案--------------------
Boost正则表达式库 在 BCB 中使用示例及解说:
http://dev.csdn.net/develop/article/19/19152.shtm