
    {hhٶ                     
   d dl m Z  d dlZd dlZd dlZd dlmc mZ d dl	Z
d dl	mZmZ d dlmZmZ d Zd Zd Zej                            dde
j        fd	d
ddej        e
j        fg          ej                            dddg          d                         Zd Zd Zd Zd Zd Zej                            d          ej                            dddg          ej                            dddg          ej                            ddej        e
j        g          ej                            dddg          d                                                             Zej                            dg d           d!             Z ej                            d          ej                            dddg          ej                            dddg          ej                            ddej        e
j        g          ej                            dddg          d"                                                             Z!ej                            dg d           d#             Z"d$ Z#d% Z$d& Z%d' Z&ej                            d(dd)d*d+ig          ej                            d,g d-g d.g          d/                         Z'd0 Z(ej                            d(d1 d2 dd3g          d4             Z)ej                            d5d6d7d8gfd9d7d8gfd:d;d<gfd=d>d?gfgg d@A          ej                            dBddg          dC                         Z*ej                            d(dDdEg          ej                            dBddg          dF                         Z+dG Z,dH Z-dI Z.dJ Z/dK Z0dL Z1ej                            dMddNdNej        gfddNdej        gfg          dO             Z2dP Z3dQ Z4dR Z5dS Z6dT Z7ej                            dddg          dU             Z8dV Z9dW Z:dX Z;dY Z<dZ Z=ej                            d[d\dddggd]dddggd^dddggd_dddggd`dddggdadddggdbdddggg          dc             Z>dd Z?de Z@df ZAdg ZBdh ZCej                            didjddg dkgdlddg dmgd^ddg dmgd\ddg dmgdnddg dkgd`ddg dmgdoddg dkgdpddg dqgdrddg dmgdsddg dmgdtddg dkgduddg dkgg          dv             ZDdw ZEdx ZFdy ZGdz ZHd{ ZIej                            d|d ejJ        d ejK        d}          ~          g          d             ZLd ZMd ZNdS )    )datetimeN)Series_testing)_convert_na_valueis_object_or_nan_string_dtypec           	      z	   t          j        dt           j        dddgt           j                  }t	          ||           }d}|j                            |          }| dk    rt	          g dt                    }nQt          |           rd	nd
}t	          t          j        dt           j        dddgt           j                  |          }t          j
        ||           |j                            |d          }| dk    rt	          g dt                    }n>t	          t          j        dt           j        dddgt           j                  |          }t          j
        ||           t	          t          j        g dt                    |           }|j                            |          }t          |           rt           j        nd
}t	          t          j        g d          |          }t          j
        ||           t	          t          j        g dt                    |           }|j                            dd          }t	          t          j        g d          |          }t          j
        ||           |j                            ddd          }t	          t          j        g d          |          }t          j
        ||           t	          t          j        dt           j        ddgt           j                  |           }d}|j                            |          }| dk    rt	          g dt                    }nPt          |           rd	nd
}t	          t          j        dt           j        ddgt           j                  |          }t          j
        ||           |j                            |d          }t          |           rt           j        nd
}t	          t          j        g d          |          }t          j
        ||           t	          t          j        g dt           j                  |           }|j                            |          }t	          t          j        g d          |          }t          j
        ||           d S )Nfoofooommm__foommm_zfoommm[_]+bardtypezmmm[_]+str)FFTTFobjectbooleanFTregex)FFFFT)r	   xyzr
   r   )FFTT)FooxYzfOOomMm__fOoMMM_zFOO|mmmcase)TFTT)r   r   TFTFna)nparraynanobject_r   r   containsboolr   tmassert_series_equalr   bool_)any_string_dtypevaluespatresultexpectedexpected_dtypes         ]/var/www/histauto/venv/lib/python3.11/site-packages/pandas/tests/strings/test_find_replace.pytest_containsr-      s   X	@
  F F"2333F
CZ  %%F5  ;;;4HHH 66FGGVHHY 	 HeRVT47rzJJJ 
 
 

 68,,,Z  E 22F5  <<<DIIIHeRVUE48
KKK 
 
 
 68,,,
777vFFF  F Z  %%F12BCCR  bh999::.QQQH68,,, 
777vFFF  F
 Z   77Fbh88899PPPH68,,, Z  e% @@Fbh999::.QQQH68,,, 
%8
KKK  F CZ  %%F5  444DAAA 66FGGVHHY 	 HeRVT40
CCC 
 
 
 68,,,Z   //F12BCCR  bh999::.QQQH68,,,
777rzJJJ  F Z  %%Fbh999::.QQQH68,,,,,    c                     t          t          j        dt          j        ddt	          j                    dd ddg	t                              } | j                            d          }t          t          j        d	t          j        d	t          j        t          j        dd t          j        t          j        g	t          j	                            }t          j        ||           d S )
NabTr	             @r   oF)r   r   r   r   r   todayr   r   r!   r    r#   r$   mixedr)   r*   s      r,   test_contains_object_mixedr8   v   s    
"&#tX^%5%5udAsK	
 	
 	
 E Y$$F
BFE26264rvrvN*	
 	
 	
 H 68,,,,,r.   c                     t          ddddt          j        gd          } | j                            dd          }t          g d          }t          j        ||           | j                            dd	          }t          g d
          }t          j        ||           t          ddddt          j        g          } | j                            dd          }t          g d          }t          j        ||           | j                            dd	          }t          g d
          }t          j        ||           d S )Nr0   r1   ccategoryr   Tr   )TFFTTF)TFFTF)r   r   r   r   r!   r#   r$   )r'   r)   r*   s      r,   *test_contains_na_kwarg_for_object_categoryr<      sI    S#sC0
CCCFZ   ..F66677H68,,,Z   //F77788H68,,, S#sC011FZ   ..F66677H68,,,Z   //F77788H68,,,,,r.   zna, expected)TT)FF)r   F)   Tr   TFc                    t          ddddt          j        g|           }d}d }t          j        |          st          |t                    st          }t          j	        ||          5  |j
                            d||          }d d d            n# 1 swxY w Y   t          dd	d	d|gd
          }t          j        ||           d S )Nr0   r1   r:   r   ]Allowing a non-bool 'na' in obj.str.contains is deprecated and will raise in a future versionmatch)r   r   TFr   )r   r   r   pdisna
isinstancer"   FutureWarningr#   assert_produces_warningr   r!   r$   )nullable_string_dtyper   r*   r   r'   msgwarnr)   s           r,   0test_contains_na_kwarg_for_nullable_string_dtyperJ      s   " S#sC08MNNNF	)  D72;; z"d33 		#D	4	4	4 > >$$SRu$==> > > > > > > > > > > > > > >tUE4:)LLLH68,,,,,s   +BBBc                    t          ddddddt          j        ddd	g
| 
          }|j                            d          }| dk    r
t
          }d}nt          |           rdnd}t          j        }t          dddddd|dddg
|
          }t          j        ||           |j                            dd          }t          dddddd|dddg
|
          }t          j        ||           |j                            d          }t          dddddd|dddg
|
          }t          j        ||           |j                            d          }t          dddddd|dddg
|
          }t          j        ||           |j                            dd          }t          dddddd|dddg
|
          }t          j        ||           d S )NABCAabaBaca CABAdogcatr   r0   r   Fr   r   Tr   Aaba)	r   r   r   r   r!   r"   r   r#   r$   )r&   sr)   r+   na_valuer*   s         r,   test_contains_moarrY      s2   	c3BFFE5I	 	 	A
 U^^C  F5   66FGGVHHY 	 6	udD%5%N  H 68,,,U^^Ce^,,F	ueT4$tL  H 68,,,U^^D!!F	udE5(E5%P  H 68,,,U^^D!!F	udE5(E5%P  H 68,,,U^^Du^--F	udD%4N  H 68,,,,,r.   c                    t          t          j        t          j        t          j        g|           }|j                            dd          }t          |           rt          j        nd}t          g d|          }t          j        ||           |j                            dd          }t          g d|          }t          j        ||           t          | d	          r| j
        d
k    r| j        t          j        u sd}t          j        t          |          5  |j                            dd          }d d d            n# 1 swxY w Y   | dk    rt          g dt          j                  }nD| j        t          j        u rt          g dt          j                  }nt          g dd          }t          j        ||           |j                            d          }| dk    rt          g dt                    }nEt          |           rdnd}t          t          j        t          j        t          j        g|          }t          j        ||           d S )Nr   r	   Fr   r   FFFT)TTTstoragepythonr?   r@   r   )r	   r	   r	   r   )r   r   r   r   r!   r   r%   r#   r$   hasattrr\   rX   rF   rE   r    r"   )r&   rW   r)   r+   r*   rH   s         r,   test_contains_nanr_      s   '/?@@@AU^^Ee^,,F12BCCR  +++>BBBH68,,,U^^Ed^++F(((???H68,,, 	 ),,1$00%//- 	 'SAAA 	5 	5U^^Ee^44F	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5x''3332:FFFHH&"&00000AAAHH000	BBBH
vx000U^^E""F5  ///t<<< 66FGGVHHY 	 2626262.III68,,,,,s   #EEEc                    t          |           rt          j        nd}t          g d|           }t	          j        d          }|j                            |          }t          g d|          }t          j	        ||           | dk    rP| j
        dk    rE|j                            |d	          }t          g d
|          }t          j	        ||           nOt          j        t          d          5  |j                            |d	           d d d            n# 1 swxY w Y   t	          j        dt          j                  }|j                            |          }t          g d
|          }t          j	        ||           t          j        t          d          5  |j                            |t          j                   d d d            d S # 1 swxY w Y   d S )Nr   )r	   barBazr   zba.FTFstringpyarrowFr   FTT5cannot process flags argument with a compiled patternr@   flags)r   r   r%   r   recompiler   r!   r#   r$   r\   pytestraises
ValueError
IGNORECASEr&   r+   serr(   r)   r*   s         r,   test_contains_compiled_regexrr   %  sz    22BCCR  &&&.>
?
?
?C
*U

CWc""F***.AAAH68,,, 8##(8(@I(M(M!!#E!22---^DDD
vx0000]U
 
 
 	. 	. GSu---	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	.
 *U"-
0
0
0CWc""F)))@@@H68,,, 
Q
 
 
 3 3 	BM2223 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3s$   8D!!D%(D%)'GG!$G!c                    t          |           rt          j        nd}t          g d|           }t	          j        d          }|j                            |          }t          g d|          }t          j	        ||           t	          j        dt          j
                  }|j                            |          }t          g d|          }t          j	        ||           t	          j        dt          j
        t          j        z            }|j                            |          }t          g d|          }t          j	        ||           d S )	Nr   )foobarzfoo
barrb   r   z^bar[   rh   rc   rf   )r   r   r%   r   rj   rk   r   r!   r#   r$   	MULTILINEro   rp   s         r,   "test_contains_compiled_regex_flagsrv   I  sG    22BCCR  ...6F
G
G
GC
*U

CWc""F+++>BBBH68,,,
*U",
/
/
/CWc""F***.AAAH68,,,
*U",">
?
?
?CWc""F)))@@@H68,,,,,r.   c           	      R   |dk    rQ|j         t          j        u r>|j        dk    r3|                     t
          j                            d                     t          dt          j        dddt          j        d	g|
          }d}t          j
        t          |          5  |j                            dd           d d d            n# 1 swxY w Y   d}t          j
        t          |          5  |j                            dd           d d d            d S # 1 swxY w Y   d S )Nrd   r]   zTODO(infer_string))reasonomfoo_nomnombar_foor	   r   z<Allowing a non-bool 'na' in obj.str.startswith is deprecatedr@   kapowbazr   z:Allowing a non-bool 'na' in obj.str.endswith is deprecatedra   )rX   r   r   r\   applymarkerrl   markxfailr   r#   rF   rE   r   
startswithendswith)requestr&   rq   rH   s       r,   $test_startswith_endswith_validate_nar   f  s   H$$%//$00FK--5I-JJKKK
	rvy%BFEB  C
 IC		#M	=	=	= . .7u---. . . . . . . . . . . . . . .
FC		#M	=	=	= * *5)))* * * * * * * * * * * * * * * * * *s$   !C

CC2DD #D z4ignore:Downcasting object dtype arrays:FutureWarningr(   r	   )r	   r~   r   r   r;   
null_valuer   c                    t          d|ddd|dg|          }|j                            |           }t          dt          j        dddt          j        dg          }|d	k    r$|t
          j        u r|                    |          }nU|d	k    r|d ||                                <   n5|r3|d
k    r-|                    d          	                    t                    }t          j        ||           |j                            | |          }t          d|ddd|dg          }t          j        ||           t          j        dt          j        ddt          j                    dd ddg	t          j                  }t          |          j                            d          }	t          dt          j        dt          j        t          j        dd t          j        t          j        g	          }
t          j        |	|
           d S Nry   rz   r{   r|   r	   r   FTr   r;   r   r0   r1   r2   r3   f)r   r   r   r   r   rB   NAfillnarC   astyper"   r#   r$   r   r   r5   r    r(   r   r   r   using_infer_stringr'   r)   expr7   rsxps              r,   test_startswithr   {  s    	z9eY
EJ  F
 Z""3''F
%ueRVTB
C
CCZ2500jj$$	(		z1CHHJJ	 - 3 3jj&&t,,63'''Z""32"..F
%T5%T:
;
;C63''' H	bfc4!1!15$3Gj  E 
		%	%c	*	*B	rvrvtT2626R	S	SB2r"""""r.   )NTFc                    t          g d|           }|j                            d|          }t          |           r|t          nt
          nd}| dk    rt
          }|d}t          d|ddd|dddg	|          }t          j        ||           |j                            d	|          }t          d|ddd|dddg	|          }t          j        ||           d S 
N)	ry   Nrz   r{   r|   Nr	   r   rege.r   r	   r   r   r   FTr   )r   r   r   r   r   r"   r#   r$   r&   r   r'   r)   r+   r   s         r,   test_startswith_string_dtyper     s#   PPP  F Z""5R"00F ))9::	2:44 
 5  :B
	D%D%?~  C 63'''Z""7r"22F
	E5%UE4@  C 63'''''r.   c                    t          d|ddd|dg|          }|j                            |           }t          dt          j        dddt          j        dg          }|d	k    r$|t
          j        u r|                    |          }nU|d	k    r|d ||                                <   n5|r3|d
k    r-|                    d          	                    t                    }t          j        ||           |j                            | |          }t          d|ddd|dg          }t          j        ||           t          j        dt          j        ddt          j                    dd ddg	t                     }t          |          j                            d          }	t          dt          j        dt          j        t          j        dd t          j        t          j        g	          }
t          j        |	|
           d S r   )r   r   r   r   r   rB   r   r   rC   r   r"   r#   r$   r   r   r5   r   r   s              r,   test_endswithr     s    	z9eY
EJ  F
 Z  %%F
%tRVTB
C
CCZ2500jj$$	(		z1CHHJJ	 - 3 3jj&&t,,63'''Z   ,,F
%UE4T:
;
;C63''' H	bfc4!1!15$3G  E 
		#	#C	(	(B	rvrvudBFBFS	T	TB2r"""""r.   c                    t          g d|           }|j                            d|          }t          |           r|t          nt
          nd}| dk    rt
          }|d}t          d|ddd|dddg	|          }t          j        ||           |j                            d	|          }t          d|ddd|dddg	|          }t          j        ||           d S r   )r   r   r   r   r   r"   r#   r$   r   s         r,   test_endswith_string_dtyper     s#   PPP  F Z  2 ..F ))9::	2:44 
 5  :B
	E5$D%?~  C 63'''Z  R 00F
	E5%UE4@  C 63'''''r.   c                     t          dt          j        g|           }|j                            ddd          }t          dt          j        g|           }t          j        ||           d S )NfooBAD__barBADr   BAD[_]*rQ   Tr   rt   r   r   r   r   replacer#   r$   r&   rq   r)   r*   s       r,   test_replacer   
  si    
"BF+3C
D
D
DCW__Y$_77Fx(0@AAAH68,,,,,r.   c                    t          dt          j        g|           }t          dt          j        g|           }|j                            dddd          }t          j        ||           t          d	t          j        g|           }|j                            d
ddd          }t          j        ||           d S )Nr   r   	foobarBADr   rQ   r2   Tnr   foo__barBADBADFr   r&   rq   r*   r)   s       r,   test_replace_max_replacementsr     s    
"BF+3C
D
D
DC{BF+3CDDDHW__Yat_<<F68,,,}bf-5EFFFHW__UB!5_99F68,,,,,r.   c                     t          dt          j        ddt          j                    dd ddg	          } t          |           j                            ddd	          }t          d
t          j        dt          j        t          j        dd t          j        t          j        g	t                    }t          j	        ||           d S )NaBADbBADTfooBADr2   r3   r   rQ   r   r0   r1   r	   r   )
r   r   r   r   r5   r   r   r   r#   r$   rq   r)   r*   s      r,   test_replace_mixed_objectr     s    
	x~'7'74CP C C[[_$$Y$$??F	bfc26265$Gv  H 68,,,,,r.   c                    t          d                    d          g|           }t          d                    d          g|           }|j                            ddt          j        d          }t          j        ||           d S )	N   abcd,àutf-8r      abcd, à(?<=\w),(?=\w), Tri   r   )r   decoder   r   rj   UNICODEr#   r$   r   s       r,   test_replace_unicoder   )  s    
"))'223;K
L
L
LC(//889AQRRRHW__.BJd_SSF68,,,,,r.   replr=   r0   r1   data)r0   r1   N)r0   r1   r:   adc                     d} |||           }t          j        t          |          5  |j                            d|           d d d            d S # 1 swxY w Y   d S )Nz!repl must be a string or callabler   r@   r0   )rl   rm   	TypeErrorr   r   )r&   index_or_seriesr   r   rH   objs         r,   #test_replace_wrong_repl_type_raisesr   0  s     .C
/$&6
7
7
7C	y	,	,	, # #T"""# # # # # # # # # # # # # # # # # #s   AAAc                     t          dt          j        g|           }d }|j                            d|dd          }t          dt          j        g|           }t          j        ||           d S )	Nr   r   c                 P    |                      d                                          S Nr   groupswapcasems    r,   <lambda>z'test_replace_callable.<locals>.<lambda>?      QWWQZZ((** r.   [a-z][A-Z]{2}   Tr   foObaD__baRbaDr   )r&   rq   r   r)   r*   s        r,   test_replace_callabler   :  sv    
"BF+3C
D
D
DC +*DW___dat_DDF'08HIIIH68,,,,,r.   c                      d S N r   r.   r,   r   r   F  s    T r.   c                     d S r   r   )r   xs     r,   r   r   F  s     r.   c                     d S r   r   )r   r   ys      r,   r   r   F  s    4 r.   c                     t          dt          j        g|           }d}t          j        t
          |          5  |j                            d|d           d d d            d S # 1 swxY w Y   d S )Nr   r   zO((takes)|(missing)) (?(2)from \d+ to )?\d+ (?(3)required )positional arguments?r@   r0   Tr   )r   r   r   rl   rm   r   r   r   )r&   r   r'   rH   s       r,   test_replace_callable_raisesr   E  s    
 %rv.6FGGGF	0  
y	,	,	, 2 2
3D1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2s   A&&A*-A*zrepl, expected_listz\g<three> \g<two> \g<one>zThree Two OnezBaz Bar Fooz\g<3> \g<2> \g<1>z\g<2>0Two0Bar0z	\g<2>0 \1zTwo0 OnezBar0 Foo)named_groups_full_swapnumbered_groups_full_swapsingle_group_with_literal"mixed_group_reference_with_literal)idsuse_compilec                     t          ddg|           }d}|rt          j        |          }|j                            ||d          }t          ||           }t          j        ||           d S )NOne Two ThreeFoo Bar Bazr   ((?P<one>\w+) (?P<two>\w+) (?P<three>\w+)Tr   )r   rj   rk   r   r   r#   r$   )r&   r   r   expected_listrq   patternr)   r*   s           r,   $test_replace_named_groups_regex_swapr   U  s~    @ /=19I
J
J
JC9G &*W%%W__Wd$_77Fm+;<<<H68,,,,,r.   z\g<20>z\20c                    d}|rt          j        |          }t          ddg|           }t          j        t           j        d          5  |j                            ||d           d d d            d S # 1 swxY w Y   d S )	Nr   r   r   r   zinvalid group referencer@   Tr   )rj   rk   r   rl   rm   errorr   r   )r&   r   r   r   rq   s        r,   2test_replace_named_groups_regex_swap_expected_failr   ~  s     :G &*W%%
/=19I
J
J
JC	rx'@	A	A	A 3 3T2223 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3s   A77A;>A;c                     t          dt          j        g|           }d}d }|j                            ||d          }t          dt          j        g|           }t          j        ||           d S )Nr   r   z,(?P<first>\w+) (?P<middle>\w+) (?P<last>\w+)c                 P    |                      d                                          S )Nmiddler   r   s    r,   r   z4test_replace_callable_named_groups.<locals>.<lambda>  s    QWWX&&//11 r.   Tr   bARr   )r&   rq   r(   r   r)   r*   s         r,   "test_replace_callable_named_groupsr     st    
-(0@
A
A
AC
9C11DW__S$d_33Fubfo-=>>>H68,,,,,r.   c                    t          dt          j        g|           }t          j        d          }|j                            |dd          }t          dt          j        g|           }t          j        ||           |j                            |ddd	          }t          d
t          j        g|           }t          j        ||           d S )Nr   r   BAD_*rQ   Tr   rt   r2   r   r   	r   r   r   rj   rk   r   r   r#   r$   )r&   rq   r(   r)   r*   s        r,   test_replace_compiled_regexr     s    
"BF+3C
D
D
DC *X

CW__S"D_11Fx(0@AAAH68,,,W__S"_66F{BF+3CDDDH68,,,,,r.   c                     t          j        d          } t          dt          j        ddt          j                    dd ddg	          }t          |          j                            | dd	          }t          d
t          j        dt          j        t          j        dd t          j        t          j        g	t                    }t          j        ||           d S )Nr   r   r   Tr   r2   r3   rQ   r   r0   r1   r	   r   )rj   rk   r   r   r   r   r5   r   r   r   r#   r$   )r(   rq   r)   r*   s       r,   (test_replace_compiled_regex_mixed_objectr     s    
*X

C
	x~'7'74CP C C[[_$$S"D$99F	bfc26265$Gv  H 68,,,,,r.   c                 >   t          d                    d          g|           }t          d                    d          g|           }t          j        dt          j                  }|j                            |dd	          }t          j        ||           d S )
Nr   r   r   r   r   rh   r   Tr   )	r   r   rj   rk   r   r   r   r#   r$   )r&   rq   r*   r(   r)   s        r,   #test_replace_compiled_regex_unicoder     s    
"))'223;K
L
L
LC(//889AQRRRH
*&bj
9
9
9CW__S$d_33F68,,,,,r.   c                 h   t          dt          j        g|           }t          j        d          }d}t          j        t          |          5  |j        	                    |dt          j
        d           d d d            n# 1 swxY w Y   t          j        t          |          5  |j        	                    |dd	d
           d d d            n# 1 swxY w Y   t          j        t          |          5  |j        	                    |ddd
           d d d            d S # 1 swxY w Y   d S )NfooBAD__barBAD__badr   r   z9case and flags cannot be set when pat is a compiled regexr@   rQ   Tr   Fr   r   )r   r   r   rj   rk   rl   rm   rn   r   r   ro   r&   rq   r(   rH   s       r,   "test_replace_compiled_regex_raisesr     s    '08H
I
I
IC
*X

C
EC	z	-	-	- B BRr}DAAAB B B B B B B B B B B B B B B 
z	-	-	- 9 9Re48889 9 9 9 9 9 9 9 9 9 9 9 9 9 9 
z	-	-	- 8 8Rd$7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8s6   )BBB*CCC;D''D+.D+c                    t          dt          j        g|           }d }t          j        d          }|j                            ||dd          }t          dt          j        g|           }t          j        ||           d S )	Nr   r   c                 P    |                      d                                          S r   r   r   s    r,   r   z6test_replace_compiled_regex_callable.<locals>.<lambda>  r   r.   r   r   Tr   r   r   )r&   rq   r   r(   r)   r*   s         r,   $test_replace_compiled_regex_callabler     s    
"BF+3C
D
D
DC**D
*_
%
%CW__S$!4_88F'08HIIIH68,,,,,r.   zregex,expectedbaoc                     t          ddt          j        g|          }t          ||          }|j                            dd|           }t          j        ||           d S )Nzf.or	   r   zf.rV   r   r   )r   r*   r&   rq   r)   s        r,   test_replace_literalr    se    
 %'/?
@
@
@Ch&6777HW__T4u_55F68,,,,,r.   c                     t          g |           }d }d}t          j        t          |          5  |j                            d|d           d d d            d S # 1 swxY w Y   d S )Nr   c                 P    |                      d                                          S r   r   r   s    r,   r   z6test_replace_literal_callable_raises.<locals>.<lambda>  r   r.   z2Cannot use a callable replacement when regex=Falser@   abcFr   )r   rl   rm   rn   r   r   )r&   rq   r   rH   s       r,   $test_replace_literal_callable_raisesr    s    
+
,
,
,C**D
>C	z	-	-	- 2 2t51112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2s   AA!$A!c                     t          g |           }t          j        d          }d}t          j        t
          |          5  |j                            |dd           d d d            d S # 1 swxY w Y   d S )Nr   r   zCCannot use a compiled regex as replacement pattern with regex=Falser@   rQ   Fr   )r   rj   rk   rl   rm   rn   r   r   r   s       r,   $test_replace_literal_compiled_raisesr	    s    
+
,
,
,C
*_
%
%C
OC	z	-	-	- . .Ru---. . . . . . . . . . . . . . . . . .s   A..A25A2c                 X   t          ddddddt          j        ddd	g
| 
          }|j                            dd          }t          ddddddt          j        ddd	g
| 
          }t          j        ||           |j                            ddd          }t          ddddddt          j        dddg
| 
          }t          j        ||           |j                            dddd          }t          ddddddt          j        dddg
| 
          }t          j        ||           d S )NrL   rM   rN   rO   rP   rQ   rR   rS   rT   r   YYYYYYabaCYYYBYYYFr   
YYYYYYbYYYBYYYcYYYcYYYtz^.a|dogzXX-XX Tr   zXX-XX bazXX-XX cazXX-XX BAzXX-XX tr   r   s       r,   test_replace_moarr    sp   
	c3BFFE5I  C
 W__S%((F	S(FB
E5Q  H 68,,,W__S%e_44FF	
   H 68,,,W__YuD_IIFF	
   H 68,,,,,r.   c                    t          ddddt          j        g|           }|j                            dddd	          }t          d
d
ddt          j        g|           }t          j        ||           |j                            dd
dd	          }t          d
d
ddt          j        g|           }t          j        ||           d S )NzA.za.Ababr   r0   r:   Fr   zc.cbr   r   s       r,   )test_replace_not_case_sensitive_not_regexr  ,  s    
$dD"&19I
J
J
JCW__S#E_??FtT4rv6>NOOOH68,,,W__T4e5_AAFtT4rv6>NOOOH68,,,,,r.   c                     t          dddt          j        dg|           }|j                            ddd          }t          dddt          j        dg|           }t          j        ||           d S )	Nr0   r1   acrQ   r   z^.$Tr   r   )r&   rW   r)   r*   s       r,   test_replace_regexr  9  st    S$+3CDDDAU]]5#T]22FsCrvr2:JKKKH68,,,,,r.   c                 0   t          dddt          j        dg|          }|j                            dd|           }| r!t          dddt          j        dg|          }n t          d	ddt          j        dg|          }t          j        ||           d S )
Nza.b.r1   rQ   r   r0   r   aaaaabr   )r   r&   rW   r)   r*   s        r,   #test_replace_regex_single_characterr  A  s     	sC,4DEEEAU]]35]11F Q5#sBFB7?OPPP5#sBFB7?OPPP68,,,,,r.   c                    | dk    r
t           }d}nt          |           rdnd}t          j        }t	          dt          j        dg|           }|j                            d          }t	          d	|dg|          }t          j        ||           t	          dd
t          j        dg|           }|j                            d          }t	          d	d	|dg|          }t          j        ||           |j                            d          }t	          dd	|dg|          }t          j        ||           t	          ddt          j        dg|           }|j                            d          }t	          dd|dg|          }t          j        ||           |j                            d          }t	          dd	|dg|          }t          j        ||           d S )Nr   Fr   r   r   r	   r   .*(BAD[_]+).*(BAD)TBAD_BADleroybrown.*BAD[_]+.*BADzBAD[_]+.*BADz^BAD_BADleroybrownz^BAD[_]+.*BADz\^BAD[_]+.*BAD)	r"   r   r   r   r   r   rA   r#   r$   )r&   r+   rX   r'   r)   r*   s         r,   
test_matchr#  T  s   5   66FGGVHHY 	 6%rvu5=MNNNFZ233FtXu-^DDDH68,,,	.>FV  F Z.//FtT8U3>JJJH68,,,Zn--FudHe4NKKKH68,,,	/?GW  F Zo..FueXu5^LLLH68,,,Z/00FudHe4NKKKH68,,,,,r.   c                     t          dt          j        ddt          j                    dd ddg	          } t          |           j                            d          }t          dt          j        dt          j        t          j        dd t          j        t          j        g	          }t          |t                     sJ t          j	        ||           d S )	NaBAD_BAD	BAD_b_BADTr	   r2   r3   r   F)
r   r   r   r   r5   r   rA   rD   r#   r$   r6   s      r,   test_match_mixed_objectr'  {  s    FN
	
 E E]]$$%9::FtRVT26265$PRPVWXXHff%%%%%68,,,,,r.   c                    t          ddt          j        g|           }|j                            dd          }t          |           rt          j        nd}t          g d|          }t          j        ||           |j                            d          }| dk    r
t          }d}nt          |           rd	nd}t          j        }t          d
d|g|          }t          j        ||           d S )Nr0   r1   r   Fr   r   )TFFr   r   T)
r   r   r   r   rA   r   r%   r#   r$   r"   )r&   rW   r)   r+   r*   rX   s         r,   test_match_na_kwargr)    s    S"&!)9:::AU[[[''F12BCCR  ***.AAAH68,,,U[[F5   66FGGVHHY 	 6tUH-^DDDH68,,,,,r.   c                     t          g d|           }|j                            dd          }t          |           rt          j        nd}t          g d|          }t          j        ||           d S )Nr  ABr  ABCr   r  Fr   r   TTTTr   r   rA   r   r   r%   r#   r$   )r&   r'   r)   r+   r*   s        r,   test_match_case_kwargr0    s    ...6FGGGFZd//F12BCCR  ...nEEEH68,,,,,r.   c                 8   t          |           rt          j        nd}t          g d|           }|j                            t          j        d                    }t          g d|          }t          j	        ||           | dk    rb| j
        dk    rW|j                            t          j        d          d	          }t          g d
|          }t          j	        ||           nat          j        t          d          5  |j                            t          j        d          d	           d d d            n# 1 swxY w Y   |j                            t          j        dt          j                            }t          g d
|          }t          j	        ||           t          j        t          d          5  |j                            t          j        d          t          j                   d d d            d S # 1 swxY w Y   d S )Nr   r+  r   r  r   rd   re   Fr   r.  rg   r@   rh   )r   r   r%   r   r   rA   rj   rk   r#   r$   r\   rl   rm   rn   ro   r&   r+   r'   r)   r*   s        r,   test_match_compiled_regexr3    s    22BCCR  ...6FGGGFZbj..//F000GGGH68,,, 8##(8(@I(M(M!!"*T"2"2!??222.III
vx0000]U
 
 
 	; 	; JRZ--E:::	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	;
 ZbjR]CCCDDF...nEEEH68,,,	Q
 
 
 @ @ 	
D))???@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @$   /EE
E	9HHHzpat, case, expr  r  bcz	a[a-z]{1}z	A[a-z]{1}z	(bc)|(ab)z((bc)|(ab))c                     t          ddg|           }|j                            ||          }t          |           rt          j        nd}t          ||          }t          j        ||           d S )Nr  Xabr   r   r   r/  )r&   r(   r   r   rq   r)   r+   r*   s           r,   test_str_match_extra_casesr8    s}     %'7
8
8
8CW]]3T]**F 22BCCR  c000H68,,,,,r.   c                 D   t          ddt          j        dg|           }|j                            d          }| dk    rt          g dt
                    }n2t          |           rdnd	}t          d
dt          j        dg|          }t          j        ||           d S )Nr   r!  r	   r   r"  r   TFFFr   r   TF	r   r   r   r   	fullmatchr"   r   r#   r$   r&   rq   r)   r*   r+   s        r,   test_fullmatchr>    s    
	.>FV  C W/00F5  555TBBB 66FGGVHHY 	 46nMMM68,,,,,r.   c                 D   t          ddt          j        dg|           }|j                            d          }| dk    rt          g dt
                    }n2t          |           rdnd	}t          d
d
t          j        dg|          }t          j        ||           d S )Nr	   zfoo$foozfoo$r   zfoo\$r   )FFFTr   r   FTr;  r=  s        r,   test_fullmatch_dollar_literalr@    s    
%BFF3;K
L
L
LCWx((F5  555TBBB 66FGGVHHY 	 5%6nMMM68,,,,,r.   c                    t          ddt          j        dg|           }|j                            dd          }t          |           rt          j        nd}t          g d	|          }t          j        ||           d S )
Nr   r!  r	   r   r"  Fr   r   r:  )	r   r   r   r   r<  r   r%   r#   r$   )r&   rq   r)   r+   r*   s        r,   test_fullmatch_na_kwargrB    s    
	.>FV  C W/E::F12BCCR  111HHHH68,,,,,r.   c                    t          g d|           }t          |           rt          j        nd}t          g d|          }|j                            dd          }t          j        ||           t          g d|          }|j                            dd	          }t          j        ||           |j                            dt          j	        
          }t          j        ||           d S )Nr+  r   r   r:  r  Tr   TTFFFrh   )
r   r   r   r%   r   r<  r#   r$   rj   ro   )r&   rq   r+   r*   r)   s        r,   test_fullmatch_case_kwargrE    s    
+++3C
D
D
DC12BCCR  111HHHHWt$//F68,,,000GGGHWt%00F68,,,Wt2=99F68,,,,,r.   c                 8   t          |           rt          j        nd}t          g d|           }|j                            t          j        d                    }t          g d|          }t          j	        ||           | dk    rb| j
        dk    rW|j                            t          j        d          d	          }t          g d
|          }t          j	        ||           nat          j        t          d          5  |j                            t          j        d          d	           d d d            n# 1 swxY w Y   |j                            t          j        dt          j                            }t          g d
|          }t          j	        ||           t          j        t          d          5  |j                            t          j        d          t          j                   d d d            d S # 1 swxY w Y   d S )Nr   r+  r   r  r:  rd   re   Fr   rD  rg   r@   rh   )r   r   r%   r   r   r<  rj   rk   r#   r$   r\   rl   rm   rn   ro   r2  s        r,   test_fullmatch_compiled_regexrG  1  s    22BCCR  ...6FGGGFZ!!"*T"2"233F111HHHH68,,, 8##(8(@I(M(M%%bj&6&6U%CC444NKKK
vx0000]U
 
 
 	? 	? J  D!1!1 >>>	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	?
 Z!!"*T"G"G"GHHF000GGGH68,,,	Q
 
 
 D D 	
RZ--R]CCCD D D D D D D D D D D D D D D D D Dr4  zpat, case, na, expr  )TFFNAbc)FFFNz	a[a-z]{2}abc$zabc\$)FTFNzAbc$zAbc\$z(abc)|(abx)z((abc)|(abx))c                     t          g d|           }|j                            |||          }| dk    rd|d<   t          }nt	          |           rdnd}t          ||          }t          j        ||           d S )	N)r  rI  z$abcNr   )r   r   r   Fr   r   )r   r   r<  r"   r   r#   r$   )	r&   r(   r   r   r   rq   r)   r+   r*   s	            r,   test_str_fullmatch_extra_casesrL  R  s    , ...6F
G
G
GCWs"55F5  B 66FGGVHHY 	 c000H68,,,,,r.   c                    t          dt          j        ddg|           }|j                            d          }t          ddgt          j        g dgg          }t          ||          }t          j        ||           d S )Nr   r	   r   r   r   BAD__)r   r   r   r   findallr   r#   r$   r   s       r,   test_findallrP  |  s{    
"BFE59AQ
R
R
RCW__Y''F'eW=>>H h//H68,,,,,r.   c                  d   t          dt          j        ddt          j                    dd ddg	          } | j                            d          }t          ddgt          j        g t          j        t          j        dgd t          j        t          j        g	          }t          j        ||           d S )	Nr   r	   Tr   r2   r3   r   rN  )	r   r   r   r   r5   r   rO  r#   r$   r   s      r,   test_findall_mixed_objectrR    s    
FN
	
 C W__Y''FeFFFGFF
	
 H 68,,,,,r.   c                    t          g d|           }t          |           rt          j        nd}|j                            d          }t          g d|          }t          j        ||           t          j        d t          j        |          D             t          j                  }t          j	        t          j        |t          j                  |           |j        
                    d          }t          g d|          }t          j        ||           t          j        d t          j        |          D             t          j                  }t          j	        t          j        |t          j                  |           |j                            dd	          }t          g d
|          }t          j        ||           t          j        d t          j        |          D             t          j                  }t          j	        t          j        |t          j                  |           |j        
                    dd	          }t          g d|          }t          j        ||           t          j        d t          j        |          D             t          j                  }t          j	        t          j        |t          j                  |           |j                            dd	d          }t          g d|          }t          j        ||           t          j        d t          j        |          D             t          j                  }t          j	        t          j        |t          j                  |           |j        
                    dd	d          }t          g d|          }t          j        ||           t          j        d t          j        |          D             t          j                  }t          j	        t          j        |t          j                  |           d S )N)ABCDEFGBCDEFEF	DEFGHIJEFEFGHEFXXXXr   Int64EF)   r=   r2   r   rK  c                 8    g | ]}|                     d           S rZ  find.0vs     r,   
<listcomp>ztest_find.<locals>.<listcomp>  s"    ===!===r.   )r[        r[  rK  c                 8    g | ]}|                     d           S r]  rfindr`  s     r,   rc  ztest_find.<locals>.<listcomp>  s"    >>>1>>>r.   r=   )r[  r=   re  r[  rK  c                 :    g | ]}|                     d d          S rZ  r=   r^  r`  s     r,   rc  ztest_find.<locals>.<listcomp>  s$    @@@Qa@@@r.   c                 :    g | ]}|                     d d          S rj  rg  r`  s     r,   rc  ztest_find.<locals>.<listcomp>  s&    AAAaq))AAAr.      )r[  r=   rK  r[  rK  c                 <    g | ]}|                     d dd          S rZ  r=   rl  r^  r`  s     r,   rc  ztest_find.<locals>.<listcomp>  s(    CCCa++CCCr.   c                 <    g | ]}|                     d dd          S rn  rg  r`  s     r,   rc  ztest_find.<locals>.<listcomp>  s(    DDDq!,,DDDr.   )r   r   r   int64r   r_  r#   r$   r   assert_numpy_array_equalrh  r&   rq   r+   r)   r*   s        r,   	test_findrs    s   
===EU  C 22BCCP  W\\$F&&&n===H68,,,x==rx}}===RXNNNHrx @ @ @(KKKW]]4  F&&&n===H68,,,x>>>>>bhOOOHrx @ @ @(KKKW\\$""F&&&n===H68,,,x@@"(3--@@@QQQHrx @ @ @(KKKW]]4##F&&&n===H68,,,xAA28C==AAARRRHrx @ @ @(KKKW\\$1%%F'''~>>>H68,,,xCCRXc]]CCC28TTTHrx @ @ @(KKKW]]4A&&F'''~>>>H68,,,xDDbhsmmDDDBHUUUHrx @ @ @(KKKKKr.   c                 ^   t          g |           }t          j        t          d          5  |j                            d           d d d            n# 1 swxY w Y   t          j        t          d          5  |j                            d           d d d            d S # 1 swxY w Y   d S )Nr   z!expected a string object, not intr@   r   )r   rl   rm   r   r   r_  rh  )r&   rq   s     r,   test_find_bad_arg_raisesru    s!   
+
,
,
,C	y(K	L	L	L  Q               
y(K	L	L	L  a                 s#   AAA:B""B&)B&c                    t          dt          j        dt          j        dg|           }t          |           rt          j        nd}|j                            d          }t          dt          j        dt          j        d	g|          }t          j        ||           |j        	                    d          }t          dt          j        d
t          j        d	g|          }t          j        ||           |j                            dd          }t          dt          j        d
t          j        d	g|          }t          j        ||           |j        	                    dd          }t          dt          j        d
t          j        d	g|          }t          j        ||           |j                            ddd          }t          dt          j        d	t          j        d	g|          }t          j        ||           |j        	                    ddd          }t          dt          j        d	t          j        d	g|          }t          j        ||           d S )NrT  rV  rX  r   rY  rZ  r[  r2   rK  re  r=   rl  )
r   r   r   r   float64r   r_  r#   r$   rh  rr  s        r,   test_find_nanrx    s   
	BFK8@P  C 44DEER

7  W\\$Fq"&!RVR0GGGH68,,,W]]4  Fq"&!RVR0GGGH68,,,W\\$""Fq"&!RVR0GGGH68,,,W]]4##Fq"&!RVR0GGGH68,,,W\\$1%%Fq"&"bfb1HHHH68,,,W]]4A&&Fq"&"bfb1HHHH68,,,,,r.   infer_stringre   )marksc                      | g d|          }t                               dd          }|j                             |          } | g d|          }t          j        ||           d S )N)abcdefgabcccdddfgcdefgggr   r  cde)cdedefgcdeeedddfgedefggg)r   	maketrans	translater#   assert_equal)r   r&   ry  r   tabler)   r*   s          r,   test_translater    s     /0008H  C MM%''EWu%%F0008H  H OFH%%%%%r.   c                     t          g d          } t                              dd          }t          dddt          j        gt
                    }| j                            |          }t          j        ||           d S )N)r0   r1   r:   g333333?r  r  r:   der   )	r   r   r  r   r   r   r  r#   r$   )rW   r  r*   r)   s       r,   test_translate_mixed_objectr    sr    ###$$AMM%''EsCbf-V<<<HU__U##F68,,,,,r.   c                    dddt           j        d}t          ||           }d}|j                            |t
          j        d          }|j        d	                                         g d
k    sJ |j        	                    |t
          j                  }|j        d	         sJ |j        
                    |t
          j                  }|j        d	         sJ |j                            |t
          j                  }|j        d	         d	         d
k    sJ |j                            |t
          j                  }|j        d	         dk    sJ d}t          j        t          |          5  |j                            |t
          j                  }d d d            n# 1 swxY w Y   |j        d	         sJ d S )Nzdave@google.comzsteve@gmail.comzrob@gmail.com)DaveSteveRobWesr   z,([A-Z0-9._%+-]+)@([A-Z0-9.-]+)\.([A-Z]{2,4})T)ri   expandr   )davegooglecomrh   r2   zhas match groupsr@   )r   r   r   r   extractrj   ro   iloctolistrA   r<  rO  countr#   rF   UserWarningr!   )r&   r   r(   r)   rH   s        r,   test_flags_kwargr  !  s   !"v	 D $.///D
9CXctDDF;q>  ""&?&?&?????X^^Cr}^55F;q>X2=99F;q>Xc77F;q>! 99999X^^Cr}^55F;q>Q
C		#Ks	;	;	; = =""3bm"<<= = = = = = = = = = = = = = =;q>s   2'F%%F),F)r   )Or   rj   numpyr   rl   pandas.util._test_decoratorsutil_test_decoratorstdpandasrB   r   r   r#   pandas.tests.stringsr   r   r-   r8   r<   r   parametrizer   r   rJ   rY   r_   rr   rv   r   filterwarningsr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r	  r  r  r  r  r#  r'  r)  r0  r3  r8  r>  r@  rB  rE  rG  rL  rP  rR  rs  ru  rx  param
skip_if_nor  r  r  r   r.   r,   <module>r     s	         				      ) ) ) ) ) ) ) ) )                  [- [- [-|- - -"- - -0 	ru	
 
 4-00- - 10
 
-(1- 1- 1-h/- /- /-d!3 !3 !3H- - -:* * ** RSS 7888Z"899bfbe'<==e}--# # .- >= :9 98 TS
#@ 22233( ( 43(D RSS 7888Z"899bfbe'<==e}--# # .- >= :9 98 TS
#@ 22233( ( 43(B- - -	- 	- 	-- - -- - - $C:!677"2"2"24I4I4I!JKK# # LK 87#- - - 
\\,,.G.G.GH 
2 
2 
2  )m,	

 !m,	

 V	

 $	
$	 	 	)   6 u66
- 
- 767 8
- 
  u66
3 
3 76 
3- - -- - -	- 	- 	-- - -8 8 8$- - - ueRV45ubf?U7VW - - -2 2 2. . .0- 0- 0-f
- 
- 
-- - - 4-00
- 
- 10
-$$- $- $-N- - -(- - -4- - -@ @ @B 	utUm$	teU^$	teU^$	edE]+	dUEN+	dT5M*	tUm,	 - - - - - -"- - -	- 	- 	-- - -(D D DB  
t7778	d7778	tT6667	ud7778	eT#=#=#=>	dD"="="=>	8889	5$ : : :;	t8889	4:::;	d$>$>$>?	$&@&@&@A	 *- -+ *-*- - -- - -L*L *L *LZ  - - -L ULFL]R]95M5MNNNO 	& 	& 	&- - -    r.   