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

string的find和find_first_of的区别

[复制链接]

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

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

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

x
2 G/ v5 z5 B% V9 r! u4 v
+ Q! q5 a, a! _7 F
如果需要全字符串匹配,用Find
0 ]' T( W7 P3 p9 y  I6 V) S' C6 Z* |# d7 A  l

; Y% f& j9 h0 E今天遇到个bUG,原来是在查找子串时调用了find_first_of,导致字符串替换出现问题。
- X' R) \1 Q# L1 j
! Y, }2 X4 s8 {( P! {: ]# O现将find和find_first_of的区别与几种使用形式介绍如下
; s0 \% C4 k4 _2 y) p9 z6 `# S5 B' f) X6 Y! e
find是查找子串,而find_first_of类似于模式匹配,只要与其中的一个字符匹配就行。
: B7 t8 Z3 `. Z+ x
5 ^. p7 l' ?; T2 hfind有四种使用形式。
( A& c( r5 X/ H6 m: |1 `# B$ T2 \" B8 r
1、size_type find(const basic_string& str, size_type pos = 0) const;
5 z  V# c# k# \/ F- C) G# Q( }8 t. B
表示 从pos位置开始找子字符串str
0 e: z: j" s5 w3 R; k' Q$ k; W! q
2、size_type find(const char* s, size_type pos, size_type count)const;
1 V9 U$ D, v1 p3 m1 \- \
) l. k6 K! u- ~* R. j/ S  V从pos位置开始找到与字符串s的前count个字符相等的子串
- ~: o$ e9 z  u& ~# P
& X. Z! b, u7 l: m2 z$ y6 {% D3、size_type find(const char* s, size_type pos = 0)const;& X5 Z( `' a. P' G7 a% ^3 `7 ~$ S4 @1 F

9 L/ _2 `" d( p0 z& X" s从pos位置开始找与字符串s相等的子串
  ]0 N# m* s. x& i) r4 D, }/ {
2 ~2 m, ]0 Y$ c2 n- M) h3 X4、size_type find(char ch, size_type pos = 0) const;
. R8 g+ S$ b- A  l- [6 G$ V1 E# L4 d3 k/ u3 j8 [
从pos位置开始找字符ch。+ @6 ]3 E- A% a7 ~2 c+ N8 b; ~; `
9 T+ j. A( D, K' i& Y) |

8 U3 _* H# [  t! o
* X3 _/ A% v: }2 P$ @- Zfind_first_of的四种形式
6 [( A3 a8 `0 M; U/ W' w' ~/ m8 g- e# [# w4 F9 v
1、size_type find_first_of(const basic_string& str, size_type pos = 0)const;
5 j4 z) T1 R0 ^7 F
& Y! ]! h+ i; S0 g从pos位置开始找到第一个与str中任意一个字符相等的字符
+ S+ ?: I0 P6 f' F8 ~
! F7 O2 i, y, x" S4 c9 P2、size_type find_first_of(const char*s, size_type pos, size_type count)const;5 T, D8 [  I( r% ?- P
, Q1 p* I8 F8 S6 m2 u
从pos位置开始找到第一个与str的前count中的任意一个字符相等的字符  S9 }8 W; G3 y2 g, L
# Q! n7 ?$ e+ k9 j9 i/ r
3、size_type find_first_of(const char* s, size_type pos = 0)const;
& b. O( ~. T8 U
) s7 Z( @, {5 A3 H  t' X从pos位置开始找到第一个与s中的任意一个字符相等的字符
4 @1 K7 {2 y2 H- t5 y# S" M- h( y% L+ B) t% e, c9 x
4、size_type find_first_of(char ch, size_type pos = 0)const;: j: U$ i) \# x6 N" \7 K/ {% s9 l
: H% M# z" @$ I+ U% @3 G
从pos位置开始找到第一个等于ch的字符。
: I/ y8 T5 D: G6 m
+ A) `, [& v* X: i# F  O' S* J
2 r. y: i4 S+ v; D  u# |
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了