情况如下:
string str("<TR>
<TD align=middle width="9%"><B><FONT color=black size=2>数字号码</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>当前时间</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>消费金额</FONT></B></TD>
<TD align=middle width="9%"><B><FONT color=black size=2>当前状态</FONT></B></TD></TR>");match_results results;
rpattern pat1("<TR>((.|\n)*)?</TR>", GLOBAL | ALLBACKREFS | NOCASE );
int igroups = pat1.cgroups();
match_results::backref_type br = pat1.match( str, results);match_results::backref_vector vector = results.all_backrefs();
match_results::backref_vector::iterator iter;if (br.matched)
{
int i=0;
for (iter = vector.begin(); iter != vector.end(); iter++)
{
if(i%igroups != 0)
{
string strText = (*iter).str();
}
i++;
}
}当str字符串比较长的时候,匹配是不成功的,当str减少一行后即如果
string str(("<TR>
<TD align=middle width="9%"><B><FONT color=black size=2>数字号码</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>当前时间</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>消费金额</FONT></B></TD>
<TD align=middle width="9%"><B><FONT color=black size=2>当前状态</FONT></B></TD></TR>");
的时候,匹配就成功,请问为什么会这样?
string str("<TR>
<TD align=middle width="9%"><B><FONT color=black size=2>数字号码</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>当前时间</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>消费金额</FONT></B></TD>
<TD align=middle width="9%"><B><FONT color=black size=2>当前状态</FONT></B></TD></TR>");match_results results;
rpattern pat1("<TR>((.|\n)*)?</TR>", GLOBAL | ALLBACKREFS | NOCASE );
int igroups = pat1.cgroups();
match_results::backref_type br = pat1.match( str, results);match_results::backref_vector vector = results.all_backrefs();
match_results::backref_vector::iterator iter;if (br.matched)
{
int i=0;
for (iter = vector.begin(); iter != vector.end(); iter++)
{
if(i%igroups != 0)
{
string strText = (*iter).str();
}
i++;
}
}当str字符串比较长的时候,匹配是不成功的,当str减少一行后即如果
string str(("<TR>
<TD align=middle width="9%"><B><FONT color=black size=2>数字号码</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>当前时间</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>消费金额</FONT></B></TD>
<TD align=middle width="9%"><B><FONT color=black size=2>当前状态</FONT></B></TD></TR>");
的时候,匹配就成功,请问为什么会这样?
解决方案 »
- 打开explorer访问网站的时候,会打开一些其它的网站来,需要怎么去掉?
- 一个简单的宏替换问题...#define aa 0x0120 ......c++高手请进.....
- VC+ADO+SQL SERVER,如何在不安装SQL SERVER2000的情况下使用!
- 帮忙看看BOOL CResGridView::PreTranslateMessage(MSG* pMsg)中的错误
- 如何在Console程序中嵌入com组件?
- 为什么OnInitDialog函数不见了?
- 如何在C++中调用service服务(EXE文件)里的函数?
- 怎么挂接API涵数?在线
- 什么样的窗口是UNICODE窗口?(内详)
- FTP小问题
- 查找记录所在表中的位置
- 这句程序什么意思??
string str(("<TR>
<TD align=middle width="9%"><B><FONT color=black size=2>数字号码</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>当前时间</FONT></B></TD>
<TD align=middle width="4%"><B><FONT color=black size=2>消费金额</FONT></B></TD></TR>");即str的长度减少到一定后,匹配即成功了。