|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
$ J6 z, Y E! R. ^7 A4 I6 g [3 c
如果需要全字符串匹配,用Find) U) Y2 D+ n1 H- e
/ I+ G0 {$ }, |$ v& E
& e; t! n8 i' ]! F1 E! B5 a今天遇到个bUG,原来是在查找子串时调用了find_first_of,导致字符串替换出现问题。, C7 v$ R4 O# h
0 F. V2 _; @& O; ^
现将find和find_first_of的区别与几种使用形式介绍如下% F8 \; V; g" T1 a, p# F# k* e$ L1 u
4 r, @2 B0 J4 L3 n
find是查找子串,而find_first_of类似于模式匹配,只要与其中的一个字符匹配就行。
C. d! V' f" W6 o1 K; P& _4 p- c7 B* i/ f2 C9 o. w
find有四种使用形式。9 ^8 ?& E# H m) q- V
% V! O8 }3 k/ e( z6 {3 \8 F1、size_type find(const basic_string& str, size_type pos = 0) const;# U, ~! ?) T: Q6 |
& V/ [$ u: T9 |6 [表示 从pos位置开始找子字符串str4 f* u2 X4 d$ E% @- ?
/ G, ?4 x. v# ^* C. z% z2、size_type find(const char* s, size_type pos, size_type count)const;$ V& O' @; ^# R
2 ]/ r# U$ W8 c& q# v- d: A从pos位置开始找到与字符串s的前count个字符相等的子串0 W4 ]/ H: A# |$ i! R: ?$ i
* a4 J" Z# t8 T M( Q
3、size_type find(const char* s, size_type pos = 0)const;
4 y5 ]" d3 [- h" X3 ]$ V+ A6 s0 e" P6 y& x
从pos位置开始找与字符串s相等的子串& }1 z6 g: C1 G
/ P, F1 ~2 Q6 G- @. c# [( |4、size_type find(char ch, size_type pos = 0) const;
, ^2 p; J' N8 p8 I- ^" C% _% H" r: P6 r1 \3 C5 g# M+ S+ n X$ s
从pos位置开始找字符ch。7 s& F) _, S$ ~3 C4 @
. R9 {& ]4 B0 z7 B0 f
1 I* m x5 W+ b/ n( y- o
8 F ^ k+ e) o, n, [9 h, ~0 N
find_first_of的四种形式
' u9 N5 O# Y0 q1 ?* ]* \" S% ?" f" U
1、size_type find_first_of(const basic_string& str, size_type pos = 0)const;
2 u7 [! `3 U9 q% Y2 U! F4 O. s: \2 I* K. e; `
从pos位置开始找到第一个与str中任意一个字符相等的字符1 ]$ ?( O7 U, f3 J) [9 J# n
5 u; [% x7 C+ P
2、size_type find_first_of(const char*s, size_type pos, size_type count)const;
4 p8 K9 X& u7 [! i9 m, p$ x) i1 u+ K
从pos位置开始找到第一个与str的前count中的任意一个字符相等的字符
. H' q8 q5 i' M" ~, {$ u3 x
( f0 |& B7 k- A, e. l, `" y3、size_type find_first_of(const char* s, size_type pos = 0)const;5 s, O2 m( e! I/ T/ Z# N
4 l0 |0 S+ I8 c: U5 u( X
从pos位置开始找到第一个与s中的任意一个字符相等的字符
- B3 E. z7 m1 _4 [! I% Z5 j4 l" Z. O/ _ e q/ l v
4、size_type find_first_of(char ch, size_type pos = 0)const;
# P$ c1 W6 D% w$ V8 v: O) s- I3 W
: E/ G( G5 \% I6 @: v& ?从pos位置开始找到第一个等于ch的字符。
$ A5 i6 o0 F0 c9 R& S0 c' S9 f2 x; E! \9 m
/ O1 P9 k: \3 h9 T5 O |
|