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

string的find和find_first_of的区别

[复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

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

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

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

x

& D. S2 ]& N! n
1 V5 e9 e, ^, W7 Y如果需要全字符串匹配,用Find5 Q! L- B, Q& m  L

, |3 X8 t% B3 C- q8 p+ X# N  P1 W; H1 m8 W' i
今天遇到个bUG,原来是在查找子串时调用了find_first_of,导致字符串替换出现问题。
2 k# [' ~5 i9 K/ r% I
3 b' z% O# O6 f现将find和find_first_of的区别与几种使用形式介绍如下: [/ A$ n, Z+ `5 N* H

" _* K8 b. F  v5 D5 f$ Cfind是查找子串,而find_first_of类似于模式匹配,只要与其中的一个字符匹配就行。
! L/ W; u4 N# [  g2 \
6 \  f7 \2 H9 k9 m# W8 {find有四种使用形式。1 W/ ~4 m) b8 k" r& t) u# n" S! y" T

8 q7 I1 p$ i" c; X5 k, o1、size_type find(const basic_string& str, size_type pos = 0) const;
. d9 ?& p7 S+ @2 s) Y) Z7 U$ }( S( h3 e- [# z/ C. L+ G2 s4 [
表示 从pos位置开始找子字符串str  R% F! `. ]- ~' T" Q

! V% B& O+ G+ r; `0 Q2 b2、size_type find(const char* s, size_type pos, size_type count)const;
4 W# W: L0 B  [, {3 b4 ]! O# B) j- s  h
从pos位置开始找到与字符串s的前count个字符相等的子串
" M5 c# I" T& Z+ r1 j* F+ d4 L  o$ \3 n" A, z3 i$ a' Z
3、size_type find(const char* s, size_type pos = 0)const;. _' H6 q) d' q
% Z. U/ G9 L( g. F) @
从pos位置开始找与字符串s相等的子串
. a: h$ r6 K& T7 O$ |  @' V) H! F( B4 @3 P4 [, ?& x1 T8 e: R" d' b
4、size_type find(char ch, size_type pos = 0) const;& B% Z1 D7 }! [
/ M$ R) t0 z! Y2 t1 }
从pos位置开始找字符ch。* Y2 E# V# d7 z, d9 `( R
2 Q0 d0 G' }: [# a
2 _/ p' o1 \9 B# Q
8 M2 M/ d) u3 f: u4 i9 U( z5 a
find_first_of的四种形式4 t6 J! E: ]" I6 }( I$ r# I

1 O- i% r9 r" F3 {+ H0 Z1、size_type find_first_of(const basic_string& str, size_type pos = 0)const;
4 J8 t' u. C  ?1 e  _  L; l+ B8 g4 b+ S6 T8 T8 X- b
从pos位置开始找到第一个与str中任意一个字符相等的字符
) N6 q" c7 Q1 X* M
8 A1 G1 ~, [$ B% b2 p( |- u9 B1 L2、size_type find_first_of(const char*s, size_type pos, size_type count)const;/ g6 ^) U# p6 K  H( B& K7 N9 b
6 o8 _1 l  a; c5 p( d
从pos位置开始找到第一个与str的前count中的任意一个字符相等的字符
, k; i9 Z; r! O% ], a5 W  L4 _7 j7 n" c! P9 \
3、size_type find_first_of(const char* s, size_type pos = 0)const;
, s) s+ q+ z9 F6 ?
' _" `: i# D" }7 F0 \从pos位置开始找到第一个与s中的任意一个字符相等的字符/ U/ K1 k) \, t3 ]3 J6 F5 A
, F( G+ I4 Z& R- M) F3 `1 d
4、size_type find_first_of(char ch, size_type pos = 0)const;
9 r9 r# h8 t3 @, M% H, L5 }- g& \8 t$ P  y& [
从pos位置开始找到第一个等于ch的字符。( n6 V# l  R" n2 w3 e: h  [5 \
  S) F* ?1 @, }8 L; M; T  F5 b
" r- j4 ^( a/ z' A1 C
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了