怎样用正则表达式判断字符串是否符合某一规则,规则如下:
等号之前的字符以$w_mn开头,等号之后的字符串是一个浮点类型的数形如:$w_mn_ang[0]=-20.5这样的字符串就能匹配怎么写正则表达式进行匹配啊,,,,求大神指...
等号之前的字符以$w_mn开头,等号之后的字符串是一个浮点类型的数
形如:$w_mn_ang[0]=-20.5这样的字符串就能匹配
怎么写正则表达式进行匹配啊,,,,求大神指点啊。。急急急~~~
#include "stdafx.h"
#include<iostream>
#include"deelx.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
char *p;
p = "\\$w_mn.+?=-?\\d+\\.\\d+";
char *str = "$w_mn_ang[0]=-20.5";
CRegexpT<char> reg( p,IGNORECASE );
MatchResult match_ret = reg.Match( str) ;
if (!(match_ret.IsMatched()))
{
cout<<"匹配"<<endl;
}
else
cout<<"不匹配"<<endl;
return 0;
}
这是我用来判断匹配的代码,,可以完成匹配工作,但是如果我的字符串是从文件里读取出来的一行,,也是这种格式却怎么也匹配不成功,这是为什么,难道与数字在文件里的存储形式有关??求大神们指点一下!! 展开
形如:$w_mn_ang[0]=-20.5这样的字符串就能匹配
怎么写正则表达式进行匹配啊,,,,求大神指点啊。。急急急~~~
#include "stdafx.h"
#include<iostream>
#include"deelx.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
char *p;
p = "\\$w_mn.+?=-?\\d+\\.\\d+";
char *str = "$w_mn_ang[0]=-20.5";
CRegexpT<char> reg( p,IGNORECASE );
MatchResult match_ret = reg.Match( str) ;
if (!(match_ret.IsMatched()))
{
cout<<"匹配"<<endl;
}
else
cout<<"不匹配"<<endl;
return 0;
}
这是我用来判断匹配的代码,,可以完成匹配工作,但是如果我的字符串是从文件里读取出来的一行,,也是这种格式却怎么也匹配不成功,这是为什么,难道与数字在文件里的存储形式有关??求大神们指点一下!! 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询