|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
$ L9 i" T9 L" x9 @1 V& U! y, L+ R+ V3 o# ^( Q
如果需要全字符串匹配,用Find& m% F, j/ w) r! ^* B. T
+ r e5 c; H' c; j# c- w
% ^) A) W$ k2 n- L4 x! C4 H, w5 c今天遇到个bUG,原来是在查找子串时调用了find_first_of,导致字符串替换出现问题。- c! z8 n! w x
' r' D* U" o0 ^ a! O现将find和find_first_of的区别与几种使用形式介绍如下
6 k* L4 y3 B/ g: m* k
& `0 u- }2 \! \+ F zfind是查找子串,而find_first_of类似于模式匹配,只要与其中的一个字符匹配就行。5 \0 F+ V4 W* d' I F
0 d: I# K+ ~0 Y+ [1 v; e# g' Wfind有四种使用形式。+ M/ i$ z! Z7 B) U
- B2 e b, ~* m: P: u$ B. x: m
1、size_type find(const basic_string& str, size_type pos = 0) const;
' ^+ w/ ]( y4 y" L! ?0 v
1 l6 q6 O g6 A3 Z表示 从pos位置开始找子字符串str3 v1 l1 S8 _- c7 x- T( \
6 t1 d, o% `& Z! _6 h2、size_type find(const char* s, size_type pos, size_type count)const;
8 D- g; R1 M1 J+ D- z' `: ~( e
- e6 ^8 ~" h1 f从pos位置开始找到与字符串s的前count个字符相等的子串
; b+ D9 R7 J8 D# m% \
) h) X( E; @# G3、size_type find(const char* s, size_type pos = 0)const;- C3 }4 W* J% E3 w7 T
# o' I) F# F5 s. d! s: I+ a
从pos位置开始找与字符串s相等的子串* H& y: ] L7 s; B
0 J& u3 @1 m3 u. k0 W6 q1 A4、size_type find(char ch, size_type pos = 0) const;" Q+ L; U, @3 x% p2 i- F5 [
0 L) u4 ?2 \7 X' i3 q& ^/ u. q从pos位置开始找字符ch。! g. ~! s: O8 w
+ h1 _, X! x. |# t8 w/ w! X7 y
% L, L2 }9 J2 H8 d$ x$ l
5 a M2 G1 g$ N9 W# e2 F* t0 g/ u- b& Qfind_first_of的四种形式
R! Z/ ?+ x( O) R
4 g0 z- C" _1 c8 [8 b6 D1、size_type find_first_of(const basic_string& str, size_type pos = 0)const;' f& S* E# S& \ ]
$ b, Y; M) {$ ^
从pos位置开始找到第一个与str中任意一个字符相等的字符4 v6 q" B! F6 e
& j; H e1 M& b8 g' [7 L. l5 p( j2、size_type find_first_of(const char*s, size_type pos, size_type count)const;- J- f) I" ?$ W, w8 {5 z8 N
+ K; a e8 _4 J- D! _8 V从pos位置开始找到第一个与str的前count中的任意一个字符相等的字符
6 S! D5 H' t0 G6 y3 f7 f4 {7 t3 G5 ~- i0 S; f- u6 Z f
3、size_type find_first_of(const char* s, size_type pos = 0)const;* G% R- s! {# A9 w+ X4 T N7 Y
s2 T* C3 q# E5 S从pos位置开始找到第一个与s中的任意一个字符相等的字符$ i9 r1 r: X& ]" V6 w `! K
, R6 s3 K2 q) U0 k# ~0 s
4、size_type find_first_of(char ch, size_type pos = 0)const;; R; B7 G3 p7 G* V
- ?- u9 R' \; n; D, @* o- \
从pos位置开始找到第一个等于ch的字符。
/ y2 x" J: N3 e, t: G, R0 T! d+ Q8 i' _( m1 T ~7 V$ k
* O0 X \9 v) F1 {& e" q
|
|