|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
& {# |9 f _8 f# I1 i3 U' o6 [
/ S' W0 V5 c I8 B0 ?0 J3 \& E如果需要全字符串匹配,用Find" o* e1 A0 I1 H
) r l1 Q; m% {# }8 @8 {; E3 d" i z
今天遇到个bUG,原来是在查找子串时调用了find_first_of,导致字符串替换出现问题。" S) q# ]- C, G# a
0 D0 B v0 i' l- c* F/ p& G
现将find和find_first_of的区别与几种使用形式介绍如下
$ j; V0 \) J+ \+ I: X5 Y3 {: M
/ w" w2 D. W" o) Cfind是查找子串,而find_first_of类似于模式匹配,只要与其中的一个字符匹配就行。. b- _6 v6 x3 \$ g P
* D& p# o/ U2 M- x7 ?: Y
find有四种使用形式。
4 C6 x( U/ Q. g/ \, t
+ N1 l# W+ V4 I2 ~1、size_type find(const basic_string& str, size_type pos = 0) const;
& C Z$ N; a8 L) L: z" f! P! m2 C/ a9 V3 T; V- s0 N
表示 从pos位置开始找子字符串str
& u" {2 [! }1 ?1 X! z+ w* V9 x
/ V- p1 Q, y% X4 m- e# P2、size_type find(const char* s, size_type pos, size_type count)const;
0 @, _+ @$ U' t. D& X( I! L& ?- m
* A S9 W1 Z& q8 @从pos位置开始找到与字符串s的前count个字符相等的子串
* m; G( X, g8 S
6 n% }' e6 A: `( f% d* E3、size_type find(const char* s, size_type pos = 0)const;3 X% K+ P* T7 _
4 J, K+ N! R; l6 c9 D
从pos位置开始找与字符串s相等的子串
; q! S- l( v6 f
" _- k1 \& w0 ?5 s6 _# }4 w Q4、size_type find(char ch, size_type pos = 0) const; v8 \/ \2 P: m }' a
2 p' ]* z; Q5 S; w! F3 c从pos位置开始找字符ch。
# P2 Q2 S1 L7 [; I5 Q, \$ U) r8 i1 w! b( |$ `% X
- j: I0 T& s5 A3 S# J# f5 R
: p4 y/ s& m' U# v0 c* |find_first_of的四种形式! Z. t# V# Y2 ~6 o4 }
& O3 S+ n: j! D, f2 m2 i( b0 g
1、size_type find_first_of(const basic_string& str, size_type pos = 0)const;
1 }, U: k/ f; n* ^) s. |2 f7 q( s/ C0 f& c% a
从pos位置开始找到第一个与str中任意一个字符相等的字符
8 H, I* H8 E9 N6 F# p/ [0 o( j+ s3 t* I; O$ ]3 e% j, v5 E* i( }
2、size_type find_first_of(const char*s, size_type pos, size_type count)const;
( [( a ?) i$ O5 p0 J( V" A+ M, M8 i; T+ ]1 {
从pos位置开始找到第一个与str的前count中的任意一个字符相等的字符
3 o) H v, l- v, r; ^& G4 ?2 }6 P/ y; U$ }
3、size_type find_first_of(const char* s, size_type pos = 0)const; Q% @& D4 d6 X7 p# U7 _1 A8 g1 P, W
( u" A/ y0 [6 A2 m6 u
从pos位置开始找到第一个与s中的任意一个字符相等的字符
, ~2 `4 a! c, H* Q
0 J; f' I7 A. G" c4、size_type find_first_of(char ch, size_type pos = 0)const;
/ p1 m# b% x5 ?8 ~, w+ R0 g0 r* e; I6 t" q3 N" n6 Y% }" `
从pos位置开始找到第一个等于ch的字符。 }" o4 Z5 |4 J" e
) k- u" i- o" m8 i( o
9 j9 }# v; a5 }' a# x0 B2 X& r |
|