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

string的find和find_first_of的区别

[复制链接]

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

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

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

x

- r* u. g, ?0 }9 `! H
" k: v# ^, D( D2 m( l) ~; n5 n如果需要全字符串匹配,用Find
! J: `1 w+ S! A. {" ^5 S( @& k& t# L" i3 P* @& G

& ~  w, F! j/ n1 P7 i3 V今天遇到个bUG,原来是在查找子串时调用了find_first_of,导致字符串替换出现问题。
7 N! n) O& B1 U; c# y( ~
  J" u5 f$ b3 `8 u0 G  z现将find和find_first_of的区别与几种使用形式介绍如下* ]4 B; f3 H9 t! C# }

% |6 L7 `, {: \6 @find是查找子串,而find_first_of类似于模式匹配,只要与其中的一个字符匹配就行。
& p4 t7 X/ g; y- z3 q! @
5 Z* D( ?0 _6 `find有四种使用形式。) O' |. z. t/ q' M0 O, c, _9 B, A
! z+ M5 w& z; x4 M! Z! o$ l
1、size_type find(const basic_string& str, size_type pos = 0) const;9 x& n- h; C9 F3 d8 j3 C
; ?9 |, _* u. Z; _! S4 u. x
表示 从pos位置开始找子字符串str% z9 S, i% |* B7 ?# j/ ]* k6 I
) g, J: X- I9 W# |
2、size_type find(const char* s, size_type pos, size_type count)const;
6 e! x3 j0 U! A; N% E' M& W; V5 z
3 ]/ i3 G  @' }3 z从pos位置开始找到与字符串s的前count个字符相等的子串
$ K, X" a4 l- X& ^3 {% m
0 l# U+ D* F4 X  l3、size_type find(const char* s, size_type pos = 0)const;
# O: s0 v4 ?8 u: C. Z/ U' }9 e
5 b% `- d9 W& _& s1 \- B从pos位置开始找与字符串s相等的子串' U+ Q" o2 f  g6 _. y, q
( ]' o. L* }! c# I8 k* x+ W0 C) S1 _
4、size_type find(char ch, size_type pos = 0) const;
" I( c: t3 R% W% P7 V. |
( I+ w- _1 p- J" b9 X& t从pos位置开始找字符ch。, `2 m; ~% A3 m5 b5 Y/ o

# e% w9 r2 X: u5 n: ?$ `$ r1 t2 o" e' S, ^0 j
; E- s1 N8 |. U: U
find_first_of的四种形式3 t, I$ m& t  ]# \& {9 f; l2 Q8 z
' i5 H/ |6 U: j' t, a
1、size_type find_first_of(const basic_string& str, size_type pos = 0)const;# E: ?+ W1 U$ r8 `! B) S
# w* s3 h" e+ f! ]5 P6 m8 f* p7 H
从pos位置开始找到第一个与str中任意一个字符相等的字符
  U+ P$ @6 G. |$ F' E: Y* x0 B: j' r7 i+ |
2、size_type find_first_of(const char*s, size_type pos, size_type count)const;* p' z, J* y; r8 H5 R
) {  j7 \* n6 p2 J
从pos位置开始找到第一个与str的前count中的任意一个字符相等的字符$ ?# w" v  W8 i7 G* \0 u. \! U% c( P

$ U8 m, N  o6 U+ D" h+ S1 a! l3、size_type find_first_of(const char* s, size_type pos = 0)const;
1 u' {4 @/ n$ V0 m/ }1 e) Z4 T$ o6 r9 e+ V' ?5 B( I7 e( e
从pos位置开始找到第一个与s中的任意一个字符相等的字符
' g4 p# v( d! g7 Y: `4 I) w! x; b5 d$ y& ~6 z7 J
4、size_type find_first_of(char ch, size_type pos = 0)const;
0 p" Q1 F! }8 H, c, f% Z
4 k, G$ ]0 i# W& r1 W1 P从pos位置开始找到第一个等于ch的字符。
9 b' g& {8 E8 D) Z( _/ {
% B# t+ f7 ^3 R
- O0 b; a8 G- z, C2 @
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了