|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
- a# |! L V6 K9 d& u( r
) j4 O' S4 K) p7 G Y如果需要全字符串匹配,用Find
; K' S( C) g3 t8 v2 Y2 b4 Z; w: j$ X# ], [% T- a
( ^$ i6 S4 D1 r% L+ r
今天遇到个bUG,原来是在查找子串时调用了find_first_of,导致字符串替换出现问题。
+ h$ y' u, T5 X8 {. ^, t4 o
/ Q" P1 u Y) h现将find和find_first_of的区别与几种使用形式介绍如下! | T: r3 z8 C
3 h6 f, y( F7 {. M I& i. w
find是查找子串,而find_first_of类似于模式匹配,只要与其中的一个字符匹配就行。
; C* I) B" ~8 q% c) f' D( W( q T1 T1 X6 w. @
find有四种使用形式。
5 D$ C* p( p( P K' J' a* _. x: ]7 b1 u2 t5 q
1、size_type find(const basic_string& str, size_type pos = 0) const;& f% e3 w- [- }! u# C' P$ f X: o, T
8 c+ l/ f; [$ G8 X, ? i2 A表示 从pos位置开始找子字符串str
. Y0 T Q1 C3 I+ N% U! c' D+ r, q, Q" y3 V
2、size_type find(const char* s, size_type pos, size_type count)const;
# `5 Q) r. [, K$ b* c& n9 T
" C$ N4 I2 V& o+ \8 n' ]; g从pos位置开始找到与字符串s的前count个字符相等的子串
6 P* M2 Y8 E7 | j6 J: k* j8 [; r" l! T2 R7 t. ]' h
3、size_type find(const char* s, size_type pos = 0)const;, E# P6 h @, u8 r
$ O% l4 L ]* a3 z3 U
从pos位置开始找与字符串s相等的子串8 ?. x2 e+ J, Z& a- W
$ X, O* A( `/ X* \) ?
4、size_type find(char ch, size_type pos = 0) const;
. a; z2 H8 j: ~) P* G/ `, E& H3 C! K
从pos位置开始找字符ch。
/ [8 F p! F! J
. {# z& M% A' o4 j2 Q
R! M+ \/ g o$ }* M) `$ [4 u* ]# Z* K
find_first_of的四种形式. t+ P: E( s4 `4 H, S( D, l2 j$ Z
" V2 T- T, e5 g/ y" e' R
1、size_type find_first_of(const basic_string& str, size_type pos = 0)const;
# S+ Q; ]. C2 x5 T R. V# q, E j! ~
从pos位置开始找到第一个与str中任意一个字符相等的字符+ C/ Z1 L* b+ ~
8 [' [" J3 q5 Y) ?6 K2、size_type find_first_of(const char*s, size_type pos, size_type count)const;! x+ J' @( ?. s* Q4 {
( Y w; A& G& P) ?6 ^
从pos位置开始找到第一个与str的前count中的任意一个字符相等的字符: s8 [# R) b% M- J$ S
0 Q% F4 E$ x4 q7 [, T( x
3、size_type find_first_of(const char* s, size_type pos = 0)const;
/ V- Z- q) F a. k: Q6 G3 a& r* y; R0 H9 M% D# w
从pos位置开始找到第一个与s中的任意一个字符相等的字符
+ k; h) z8 A6 U: s+ u7 j$ _5 w
$ i3 ^( w7 |/ }7 F- P1 A+ U4、size_type find_first_of(char ch, size_type pos = 0)const;
8 l E# t# q( n( U9 ~
2 d L+ w) O" X从pos位置开始找到第一个等于ch的字符。$ S( c" q# k9 P Y$ y& Y; [8 O4 `! i
, @# q3 |+ S( T7 r s
+ w/ p- d9 b5 G3 z
|
|