mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-11-03 19:11:34 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			46 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
COMMENT(!MOD!zsh/pcre
 | 
						|
Interface to the PCRE library.
 | 
						|
!MOD!)
 | 
						|
cindex(regular expressions, perl-compatible)
 | 
						|
The tt(zsh/pcre) module makes some commands available as builtins:
 | 
						|
 | 
						|
startitem()
 | 
						|
findex(pcre_compile)
 | 
						|
item(tt(pcre_compile) [ tt(-aimx) ] var(PCRE))(
 | 
						|
Compiles a perl-compatible regular expression.
 | 
						|
 | 
						|
Option tt(-a) will force the pattern to be anchored.
 | 
						|
Option tt(-i) will compile a case-insensitive pattern.
 | 
						|
Option tt(-m) will compile a multi-line pattern; that is,
 | 
						|
tt(^) and tt($) will match newlines within the pattern.
 | 
						|
Option tt(-x) will compile an extended pattern, wherein
 | 
						|
whitespace and tt(#) comments are ignored.
 | 
						|
)
 | 
						|
findex(pcre_study)
 | 
						|
item(tt(pcre_study))(
 | 
						|
Studies the previously-compiled PCRE which may result in faster
 | 
						|
matching.
 | 
						|
)
 | 
						|
findex(pcre_match)
 | 
						|
item(tt(pcre_match) [ tt(-a) var(arr) ] var(string))(
 | 
						|
Returns successfully if tt(string) matches the previously-compiled
 | 
						|
PCRE.
 | 
						|
 | 
						|
If the expression captures substrings within parentheses,
 | 
						|
tt(pcre_match) will set the array var($match) to those
 | 
						|
substrings, unless the tt(-a) option is given, in which
 | 
						|
case it will set the array var(arr).
 | 
						|
)
 | 
						|
enditem()
 | 
						|
 | 
						|
The tt(zsh/pcre) module makes available the following test condition:
 | 
						|
startitem()
 | 
						|
findex(pcre-match)
 | 
						|
item(expr tt(-pcre-match) pcre)(
 | 
						|
Matches a string against a perl-compatible regular expression.
 | 
						|
 | 
						|
For example,
 | 
						|
 | 
						|
[[ "$text" -pcre-match ^d+$ ]] && print text variable contains only "d's".
 | 
						|
)
 | 
						|
enditem()
 |