PROGRAMMING

  minte9
learningjourney




S R Q

Quantifiers

p18 Metacharacter + means one or more of the immediately-preceding item.
 
#!/bin/sh

: "Quantifiers:
Metacharacter + means one or more of the preceding item
Metacharacter * means any (none or more), which is similar to the ?

Notation {0,1} is the same as ?
When single number is given, such as [a-z]{3}, 
it matches exactly that many
"

A='<H1> <H2> <H3 > <H7>'
B='
<HR SIZE=14>
<HR  SIZE = 14 >
<HRSIZE=14>
'

echo $A | grep '<H[1-6] *>'               -o -E | tee result.txt
echo $B | grep '<HR +SIZE *= *[0-9]+ *>'  -o -E | tee result.txt -a
 
<H1>
<H2>
<H3 >
<HR SIZE=14>
<HR SIZE = 14 >

More Examples

 
#!/bin/sh

: "Quantifiers:
Correct php variable names
Strings with double quotes
Time of the day, such as 9:17 AM
"

A='$a, $_b, $C, but not $1a'
B='"abc", but not "abc d'
C='
09:17 am
99:99 pm
9:17 am
12:30 pm
'

echo $A | grep '\$[a-zA-Z_][a-zA-Z_0-9]*'               -o -E | tee res2.txt
echo $B | grep '"[^"]*"'                                -o -E | tee res2.txt -a
echo $C | grep '\<(1[012]|[1-9]):[0-5][0-9]\> (am|pm)'  -o -E | tee res2.txt -a
 
$a
$_b
$C
"abc"
9:17 am
12:30 pm

Questions    
Last update: 60 days ago
Grep, Backreference