
    bMh              
          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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%d. Z&ej                            d&d/ d0 dUd1g          d2             Z'd3 Z(d4 Z)d5 Z*d6 Z+d7 Z,d8 Z-ej                            d9dd:d:ej        gfdd:dej        gfg          d;             Z.d< Z/d= Z0d> Z1d? Z2d@ Z3ej                            dddg          dA             Z4dB Z5dC Z6dD Z7dE Z8dF Z9dG Z:dH Z;dI Z<dJ Z=dK Z>dL Z?dM Z@dN ZAej                            dOd ejB        d ejC        dP          Q          g          dR             ZDdS ZEdT ZFdS )V    )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         f/var/www/html/test/jupyter/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_mixedr7   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 )Nr/   r0   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 )Nr/   r0   r9   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_dtyperI      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   r/   r   Fr   r   Tr   Aaba)	r   r   r   r   r    r!   r   r"   r#   )r%   sr(   r*   na_valuer)   s         r+   test_contains_moarrX      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#   hasattrrZ   rW   rE   rD   r   r!   )r%   rV   r(   r*   r)   rG   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           	      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 )Nstringr[   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 deprecatedbar)rW   r   r   rZ   applymarkerpytestmarkxfailr   r"   rE   rD   r   
startswithendswith)requestr%   serrG   s       r+   $test_startswith_endswith_validate_narp   *  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	   rf   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 Nra   rb   rc   rd   r	   r   FTr   r:   r   r/   r0   r1   r2   f)r   r   rl   r   r   rA   NAfillnarB   astyper!   r"   r#   r   r   r4   r   r'   r   rq   r   using_infer_stringr&   r(   expr6   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)	ra   Nrb   rc   rd   Nr	   r   rege.r   r	   r   r   r   FTr   )r   r   rl   r   r   r!   r"   r#   r%   r   r&   r(   r*   rz   s         r+   test_startswith_string_dtyper   d  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 rs   )r   r   rm   r   r   rA   ru   rv   rB   rw   r!   r"   r#   r   r   r4   r   rx   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   rm   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[_]*rP   Tr   foobarr   r   r   r   replacer"   r#   r%   ro   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   rP   r1   Tnr   foo__barBADBADFr   r%   ro   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fooBADr1   r2   r   rP   r   r/   r0   r	   r   )
r   r   r   r   r4   r   r   r   r"   r#   ro   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flagsr   )r   decoder   r   re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<   r/   r0   data)r/   r0   N)r/   r0   r9   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?   r/   )ri   raises	TypeErrorr   r   )r%   index_or_seriesr   r   rG   objs         r+   #test_replace_wrong_repl_type_raisesr     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%   ro   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   
  s    T r-   c                     d S r   r   )r   xs     r+   r   r   
  s     r-   c                     d S r   r   )r   r   ys      r+   r   r   
  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?   r/   Tr   )r   r   r   ri   r   r   r   r   )r%   r   r&   rG   s       r+   test_replace_callable_raisesr   	  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*c                     t          dt          j        g|           }d}d }|j                            ||d          }t          dt          j        g|           }t          j        ||           d S )NzFoo Bar Bazr   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%   ro   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_*rP   Tr   r   r1   r   r   	r   r   r   r   compiler   r   r"   r#   )r%   ro   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   r1   r2   rP   r   r/   r0   r	   r   )r   r   r   r   r   r   r4   r   r   r   r"   r#   )r'   ro   r(   r)   s       r+   (test_replace_compiled_regex_mixed_objectr   2  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   r   r   Tr   )	r   r   r   r   r   r   r   r"   r#   )r%   ro   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?   rP   Tr   Fr   r   )r   r   r   r   r   ri   r   
ValueErrorr   r   
IGNORECASEr%   ro   r'   rG   s       r+   "test_replace_compiled_regex_raisesr   F  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%   ro   r   r'   r(   r)   s         r+   $test_replace_compiled_regex_callabler   X  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.rU   r   r   )r   r)   r%   ro   r(   s        r+   test_replace_literalr   b  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>o  r   r-   z2Cannot use a callable replacement when regex=Falser?   abcFr   )r   ri   r   r   r   r   )r%   ro   r   rG   s       r+   $test_replace_literal_callable_raisesr   m  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?   rP   Fr   )r   r   r   ri   r   r   r   r   r   s       r+   $test_replace_literal_compiled_raisesr   v  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 )NrK   rL   rM   rN   rO   rP   rQ   rR   rS   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   r/   r9   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 )	Nr/   r0   acrP   r   z^.$Tr   r   )r%   rV   r(   r)   s       r+   test_replace_regexr     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.r0   rP   r   r/   r   aaaaabr   )r   r%   rV   r(   r)   s        r+   #test_replace_regex_single_characterr     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   r@   r"   r#   )r%   r*   rW   r&   r(   r)   s         r+   
test_matchr    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	   r1   r2   r  F)
r   r   r   r   r4   r   r@   rC   r"   r#   r5   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 )Nr/   r0   r   Fr   r   )TFFr   r   T)
r   r   r   r   r@   r   r$   r"   r#   r!   )r%   rV   r(   r*   r)   rW   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   r@   r   r   r$   r"   r#   )r%   r&   r(   r*   r)   s        r+   test_match_case_kwargr  /  s    ...6FGGGFZd//F12BCCR  ...nEEEH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%   ro   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  O  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%   ro   r(   r*   r)   s        r+   test_fullmatch_na_kwargr  ^  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   )TTFFFr   )
r   r   r   r$   r   r  r"   r#   r   r   )r%   ro   r*   r)   r(   s        r+   test_fullmatch_case_kwargr  j  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                    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_findallr    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   r1   r2   r   r  )	r   r   r   r   r4   r   r  r"   r#   r   s      r+   test_findall_mixed_objectr!    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<   r1   r   c                 8    g | ]}|                     d           S r)  find.0vs     r+   
<listcomp>ztest_find.<locals>.<listcomp>  s"    ===!===r-   )r*        r*  r+  c                 8    g | ]}|                     d           S r-  rfindr0  s     r+   r3  ztest_find.<locals>.<listcomp>  s"    >>>1>>>r-   r<   )r*  r<   r5  r*  r+  c                 :    g | ]}|                     d d          S r)  r<   r.  r0  s     r+   r3  ztest_find.<locals>.<listcomp>  s$    @@@Qa@@@r-   c                 :    g | ]}|                     d d          S r:  r7  r0  s     r+   r3  ztest_find.<locals>.<listcomp>  s&    AAAaq))AAAr-      )r*  r<   r+  r*  r+  c                 <    g | ]}|                     d dd          S r)  r<   r<  r.  r0  s     r+   r3  ztest_find.<locals>.<listcomp>  s(    CCCa++CCCr-   c                 <    g | ]}|                     d dd          S r>  r7  r0  s     r+   r3  ztest_find.<locals>.<listcomp>  s(    DDDq!,,DDDr-   )r   r   r   int64r   r/  r"   r#   r   assert_numpy_array_equalr8  r%   ro   r*   r(   r)   s        r+   	test_findrC    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   ri   r   r   r   r/  r8  )r%   ro   s     r+   test_find_bad_arg_raisesrE    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 )Nr#  r%  r'  r   r(  r)  r*  r1   r+  r5  r<   r<  )
r   r   r   r   float64r   r/  r"   r#   r8  rB  s        r+   test_find_nanrH    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_stringpyarrow)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%   rI  r   tabler(   r)   s          r+   test_translaterZ    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)r/   r0   r9   g333333?r   rQ  r9   der   )	r   r   rV  r   r   r   rW  r"   r#   )rV   rY  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)r   expandr   )davegooglecomr   r1   zhas match groupsr?   )r   r   r   r   extractr   r   iloctolistr@   r  r  countr"   rE   UserWarningr    )r%   r   r'   r(   rG   s        r+   test_flags_kwargrm  (  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   )Gr   r   numpyr   ri   pandas.util._test_decoratorsutil_test_decoratorstdpandasrA   r   r   r"   pandas.tests.stringsr   r   r,   r7   r;   rj   parametrizeru   r   rI   rX   r]   rp   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  r  r  r  r  r!  rC  rE  rH  param
skip_if_norZ  r^  rm  r   r-   r+   <module>ry     s         				      ) ) ) ) ) ) ) ) )                  [- [- [-|- - -"- - -0 	ru	
 
 4-00- - 10
 
-(1- 1- 1-h/- /- /-n* * ** 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- - -- - -	- 	- 	-- - -8 8 8$- - - ueRV45ubf?U7VW - - -2 2 2. . .0- 0- 0-f
- 
- 
-- - - 4-00
- 
- 10
-$$- $- $-N- - -(- - -4- - -- - -"- - -	- 	- 	-- - -2- - -- - -L*L *L *LZ  - - -L ULFL]R]95M5MNNNO 	& 	& 	&- - -    r-   