CString 中的SpanIncluding 和SpanExcluding 用法

SpanIncluding 简单的理解就是提取包含在指定串中的一个子串

MSDN上的备注说:从左边的第一个字符开始查找与给定串相等的字符,如果没有则返回空的串,反之,继续查找,到结束.

例子方便理解

CString str;
 CString strDigital("0123456");
 str = "51920";
 CString strVal = str.SpanIncluding(strDigital);
 MessageBox(strVal);

//strVal="51"

在str中提取与strDigtal想等的串,从第一个‘5’开始查找,....,直到str中的一个字符在strDigtal找不到...,例子中,‘9‘条件不符,直接返回"51"

SpanExcluding 与SpanIncluding 刚好相反,,,查找与之不匹配的

CString str;
 CString strDigital("0123456");
 str = "9867578";
 CString strVal = str.SpanExcluding(strDigital);
 MessageBox(strVal);

//strVal="98"

查找到‘6‘的时候不匹配,返回"98"

判断一个串是否全为数字,可以这样写

BOOL IsDigital(CString str)

{

return str==str.SpanIncluding("0123456789");

}

时间: 2024-08-05 06:38:39

CString 中的SpanIncluding 和SpanExcluding 用法的相关文章

CString中Format函数与格式输入与输出

CString中Format函数与格式输入与输出 Format是一个很常用,却又似乎很烦的方法,以下是它的完整概貌,以供大家查询之用: 格式化字符串forma("%d",12)意思是将一个整形的格式化的字符(我认为是保持其形状不变) 1).格式说明总是以%字符开始,以下是不同类型数据的格式方式%号后的说明: d输出带符号十进制数 o输出无符号八进制数 x输出无符号十六进制数 u输出无符号数 c输出单个字符 s输出一串字符 f输出实数(6位小数) e以指数形式输出实数 g选用f与e格式中

标准C++中的string类的用法总结

标准C++中的string类的用法总结 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯定的.也许有人会说,即使不用MFC框架,也可以想办法使用MFC中的API,具体的操作方法在本文最后给出操作方法.其实,可能很多人很可能会忽略掉标准C++中string类的使用.标准C++中提供的string类得功能也是非常强大的,一般都能满足我们开发项目时使用

标准C++中的string类的用法总结【转】

转自(略改动):http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 更全面新颖的说明见:http://www.cplusplus.com/reference/string/string/  说明: 1.size_t 是个unsigned integral type.  2.文中 c字符数组 是指末尾不带'\0'的,注意与 c字符串 的区别 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC

VC中TRACE ASSERT VERIFY之用法

一.TRACE宏 当选择了Debug目标,并且afxTraceEnabled变量被置为TRUE时,TRACE宏也就随之被激活了.但在程序的Release版本中,它们是被完全禁止的.下面是一个典型的TRACE语句: … int nCount =9; CString strDesc("total"); TRACE("Count =%d,Description =%s\n",nCount,strDesc); … 可以看到,TRACE语句的工作方式有点像C语言中的print

Cstring中GetBuffer()方法的主要作用

摘自:http://bbs.csdn.net/topics/310247836 GetBuffer()主要作用是将字符串的缓冲区长度锁定 CString::GetBuffer有两个重载版本: (1)LPTSTR GetBuffer( ); (2)LPTSTR GetBuffer(int nMinBufferLength) 在第二个版本中,当设定的长度小于原字符串长度时,nMinBufLength = nOldLen, 该参数会被忽略,不分配内存,指向原CString:当设定的长度大于原字符串本身

MFC中按钮控件的用法笔记(转)

VC学习笔记1:按钮的使能与禁止 用ClassWizard的Member Variables为按钮定义变量,如:m_Button1:则m_Button1.EnableWindow(true); 使按钮处于允许状态m_Button1.EnableWindow(false); 使按钮被禁止,并变灰显示 VC学习笔记2:控件的隐藏与显示 用CWnd类的函数BOOL ShowWindow(int nCmdShow)可以隐藏或显示一个控件. 例1:CWnd *pWnd;pWnd = GetDlgItem(

MFC基础--CString的Tokenize()和_tcstok()的用法对比

Tokenize()和_tcstok()都是用来分割字符串的方法.但是其各自的使用还是有很多不同. 下面对字符串“%s111gdfafd%s\t023232%s\t1%s\t2%s\t3%s\t4%s\t0XFF0000%s\tfdas”用这两个函数都进行一些相同匹配分割处理,代码和结果对比如下: Tokenize(): #include "stdafx.h" #pragma once #include <stdio.h> #include <tchar.h>

关于Java中this和super的用法介绍和区别

1.this&super 什么是this,this是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针.当你想要引用当前对象的某种东西,比如当前对象的某个方法,或当前对象的某个成员,你便可以利用this来实现这个目的.要注意的是this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this.his也可作为构造函数来使用.在后面可以看到 而什么是super,可以理解为是指向自己超(父)类对象的一个指针,而这个超类指的是离自己最近的一个父类.super的作用同样是可

shell中$0,$?,$!等的特殊用法

shell中$0,$?,$!等的特殊用法 变量说明: $$Shell本身的PID(ProcessID)$!Shell最后运行的后台Process的PID$?最后运行的命令的结束代码(返回值)$-使用Set命令设定的Flag一览$*所有参数列表.如"$*"用「"」括起来的情况.以"$1 $2 … $n"的形式输出所有参数.[email protected]所有参数列表.如"[email protected]"用「"」括起来的情况