PLM之家PLMHome-国产软件践行者

string的find和find_first_of的区别

[复制链接]

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

admin 发表于 2020-3-19 19:49:22 |阅读模式

admin 楼主

2020-3-19 19:49:22

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

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

x

9 h- v# A  }" @6 z5 m& K6 @& y# q1 S( ~- r
如果需要全字符串匹配,用Find
& w+ J  u2 y7 m. b4 e; g' B6 r! H8 k3 b; G$ S6 B

/ R4 u  @! b! A, Z) e  s今天遇到个bUG,原来是在查找子串时调用了find_first_of,导致字符串替换出现问题。! l; U) ?( ^% x; O
' [! m8 D6 N4 k1 |; G% C& h4 h, R- g
现将find和find_first_of的区别与几种使用形式介绍如下
8 T5 f0 W4 ]2 Q# {' D# b! N3 |! q
find是查找子串,而find_first_of类似于模式匹配,只要与其中的一个字符匹配就行。
/ U/ y8 m% e7 `3 Y3 e* k
+ V5 c; z4 q4 {find有四种使用形式。
; _  c, F) ?9 _' ?" k  I9 A2 i) U: R/ m
1、size_type find(const basic_string& str, size_type pos = 0) const;
* V3 K: @3 j5 ^# ?
' Y# R; z6 d& i表示 从pos位置开始找子字符串str
* F: H0 u' ~' r+ J
, t: K7 m# L% j2、size_type find(const char* s, size_type pos, size_type count)const;% }# y2 m( i; c% m3 y* Q
) {' U+ M  \" M+ ^, b( w
从pos位置开始找到与字符串s的前count个字符相等的子串% [; S; G$ k0 X1 q9 E9 g8 g, {) C

) e% l  Z+ K( D, X; x8 G# P1 {3、size_type find(const char* s, size_type pos = 0)const;0 Z) u. v: M$ a- {5 ~4 M% `

: T, O1 u3 N0 G* {) T' f& z从pos位置开始找与字符串s相等的子串. \7 R9 o2 p9 @4 o) A: v- A3 B

! N7 g; x8 w: w1 a$ J3 x4、size_type find(char ch, size_type pos = 0) const;
# m' B5 D9 P$ e6 z" ~6 M( E0 m) C8 R/ t& k; w
从pos位置开始找字符ch。0 J% `1 [3 W( \; ]+ h
6 S1 [: `. R# N  \" P$ V

7 W3 q( \. H* I7 h  S. T8 p# a, s; J; H& z7 ?9 j8 j
find_first_of的四种形式
+ H+ Z  o8 X" m- o& x! W) j3 n; K! B6 J
+ v: `- ]; q/ V& b0 ^2 P6 T* W8 t1、size_type find_first_of(const basic_string& str, size_type pos = 0)const;
0 Y" }, M) u5 W* O) C! J; S& P- K9 Y0 ^! z* t$ h/ u6 Y- o# ~0 y
从pos位置开始找到第一个与str中任意一个字符相等的字符
; x+ n& E6 r& \0 A* m" ]. p4 t4 W( _! T; j1 T) m3 x
2、size_type find_first_of(const char*s, size_type pos, size_type count)const;" o' h' S7 i  o( y& {( Y
$ V0 A4 |, D8 y' c: J
从pos位置开始找到第一个与str的前count中的任意一个字符相等的字符% ?2 w  p1 a& [  }
, A+ ]1 ~4 k5 x0 Z& M2 u/ T
3、size_type find_first_of(const char* s, size_type pos = 0)const;) V8 g. l# k$ ?% ?# _

4 h  \. h4 {* o2 `: `  }从pos位置开始找到第一个与s中的任意一个字符相等的字符
" h. E" e$ S- f+ Y: x2 [$ U
6 ]% X6 A4 K2 i/ D9 q8 W  ~/ D4、size_type find_first_of(char ch, size_type pos = 0)const;; J& Z0 }/ P3 x* T$ d0 a

/ ]. J- b( N$ }3 v: \  A. @从pos位置开始找到第一个等于ch的字符。
2 d: B0 ?- h' X5 g0 q' t' \& L) g  v" F/ R

! F  B! o& `% I( J$ L
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了