PLM之家PLMHome-工业软件践行者

string的find和find_first_of的区别

[复制链接]

2020-3-19 19:49:22 1782 0

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82172
QQ
发表于 2020-3-19 19:49:22 | 显示全部楼层 |阅读模式

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x

: T  Q4 x" c" g& U# ]  u" ]8 E2 r& |4 P( F3 o( K2 b- K: D
如果需要全字符串匹配,用Find
9 N% m4 Q$ _2 ]8 k" |* H3 L2 v0 J
9 h6 Z9 c: y, l* \7 C
6 _: T1 f4 A) \0 a8 `# {' K今天遇到个bUG,原来是在查找子串时调用了find_first_of,导致字符串替换出现问题。
% g3 j( w+ `/ {+ R) `8 ^# S- B* U9 Y8 K, o  Y
现将find和find_first_of的区别与几种使用形式介绍如下% c! x& }# G8 w) M! @2 J$ l$ S/ f

. S! z: d& d; P4 Rfind是查找子串,而find_first_of类似于模式匹配,只要与其中的一个字符匹配就行。
# a  @$ r4 x+ I* k
- l7 d, F  H$ d! V4 J( G# x( wfind有四种使用形式。; g$ H7 [. w  k8 j6 i& Y$ O8 @

& l# G* _( k0 b% i1、size_type find(const basic_string& str, size_type pos = 0) const;
/ z: s* S* I7 A3 e2 C( u7 E2 V5 r- B
表示 从pos位置开始找子字符串str8 r& o8 Y) `2 q9 r' R3 I! [7 i
3 `6 o( s+ o" P  q$ k
2、size_type find(const char* s, size_type pos, size_type count)const;: ~( T; C* S2 t' d4 Z$ l6 w+ [

( j9 k" T: v" ^; Y9 @. K  F从pos位置开始找到与字符串s的前count个字符相等的子串; l) j, s/ Q, v6 @. Q* c

$ B; p3 Y' y) E1 f3、size_type find(const char* s, size_type pos = 0)const;7 k% l* n8 t% X# f
- `+ e% L+ P' O( V  w- ~
从pos位置开始找与字符串s相等的子串
" e* B/ M. b5 g! o! }8 g' N' }2 H  w- M) N
4、size_type find(char ch, size_type pos = 0) const;) U4 X9 j7 q' K# n1 l9 s. ~1 z

; j# M+ V" X1 `1 u: G从pos位置开始找字符ch。
# T$ h) y( L- z3 K! s5 X) H: F" z$ I( N0 t9 u& U+ X

. \# S) b6 T9 k: }1 ~7 s/ k+ t
2 u! \; U/ H# ]3 z  Efind_first_of的四种形式
4 P9 S: [* S. Z
+ J3 n4 I/ [, ~1 ~- H' O2 Q7 [1、size_type find_first_of(const basic_string& str, size_type pos = 0)const;+ L5 ^- c8 X0 V) i! t' B
8 V* o) Z' v5 u
从pos位置开始找到第一个与str中任意一个字符相等的字符
6 _" k7 i/ k1 p
( t/ q4 {! V( I7 J1 o2、size_type find_first_of(const char*s, size_type pos, size_type count)const;$ F8 L' c+ W; M; s- G- B

4 r) c7 F4 R) o. ^, x从pos位置开始找到第一个与str的前count中的任意一个字符相等的字符# T( G/ x% \: T$ ~  K& D
7 E' m: ?$ l" B4 U3 K9 O
3、size_type find_first_of(const char* s, size_type pos = 0)const;$ w- F6 |1 o1 T6 C7 G1 O

( w6 I. k/ T# e- a$ j% f9 m: Q1 c从pos位置开始找到第一个与s中的任意一个字符相等的字符4 Z# l$ O. Q, U: d$ Z, b

. e8 I) z8 X# E* s! F3 u4、size_type find_first_of(char ch, size_type pos = 0)const;* E7 U0 ^+ k; J; V/ V7 q( ^
, p1 Z5 w; a3 @
从pos位置开始找到第一个等于ch的字符。
2 k: T* M" s% K0 W! H; U
8 T1 E* |2 M) c+ t1 x( |  K* z
& o* l0 ?& ?7 ~7 _
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了