本文整理汇总了C++中WString::match方法的典型用法代码示例。如果您正苦于以下问题:C++ WString::match方法的具体用法?C++ WString::match怎么用?C++ WString::match使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WString
的用法示例。
在下文中一共展示了WString::match方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: addLine
void VMsgLog::addLine( const WString& str, bool newline )
{
if( str.match( "cd *" ) ) {
if( str == lastCD ) {
return;
}
lastCD = str;
}
//drw int length = str.size();
//drw if( length > _maxLength ) {
//drw _maxLength = length;
//drw _batcher->setExtent( _batcher->getTextExtentX( str ) + WSystemMetrics::vScrollBarWidth() );
//drw }
if( _data.count() > 999 ) {
delete _data.removeAt( 0 );
_batcher->deleteString( 0 );
}
WString* s = new WString( str );
if( !newline ) {
int dcount = _data.count();
if( dcount > 0 ) {
delete _data.removeAt( dcount - 1 );
}
int bcount = _batcher->count();
if( bcount > 0 ) {
_batcher->deleteString( bcount - 1 );
}
}
_data.add( s );
_batcher->insertString( *s );
_batcher->select( _batcher->count() -1 );
// _batcher->update();
}
示例2: matchLine
bool VMsgLog::matchLine( int index, char* file, int& line, int& offset, char* help )
{
file[0] = '\0'; line = 0; offset = 0; help[0] = '\0';
for( int i=0; i<_config->logScanPatterns().count(); i++ ) {
WString& p = *(WString*)_config->logScanPatterns()[i];
if( matchPattern( p, index, file, line, offset, help ) ) {
WFileName f( file );
while( index > 0 ) {
index --;
WString* data = (WString*)_data[index];
if( data->match( "cd *" ) ) {
WString dir( &(*data)[3] );
int dirLen = dir.size()-1;
if( dir[dirLen] != '\\' ) {
dir.concat( '\\' );
}
f.absoluteTo( dir );
strcpy( file, f );
break;
}
}
return TRUE;
}
}
return FALSE;
}