]>
Commit | Line | Data |
---|---|---|
ac50fbac CR |
1 | VAR='[[:alpha:]]' |
2 | ||
3 | [[ $VAR =~ '[[:alpha:]]' ]] && echo match 1 | |
4 | ||
5 | [[ a =~ '[[:alpha:]]' ]] || echo match 2 | |
6 | ||
7 | [[ a =~ [[:alpha:]] ]] && echo match 3 | |
8 | ||
9 | [[ a =~ $VAR ]] && echo match 4 | |
10 | ||
11 | [[ a =~ "$VAR" ]] || echo match 5 | |
12 | ||
13 | line=aab | |
14 | [[ $line =~ [[:space:]]*(a)?b ]] && echo match 6 | |
15 | ||
16 | V="alphabet" | |
17 | [[ $V == alphabet ]] && echo yes 1 | |
18 | [[ $V == "alphabet" ]] && echo yes 2 | |
19 | [[ $V == 'alphabet' ]] && echo yes 3 | |
20 | [[ $V =~ alphabet ]] && echo yes 4 | |
21 | [[ $V =~ "alphabet" ]] && echo yes 5 | |
22 | [[ $V =~ 'alphabet' ]] && echo yes 6 | |
23 | ||
24 | DOG="Dog name - 01 - Wiggles" | |
25 | REPAT='([[:alpha:][:blank:]]*)- ([[:digit:]]*) - (.*)$' | |
26 | if [[ $DOG =~ ([[:alpha:][:blank:]]*)-\ ([[:digit:]]*)\ -\ (.*)$ ]] | |
27 | then | |
28 | echo Dog ${BASH_REMATCH[2]} is ${BASH_REMATCH[3]} | |
29 | fi | |
30 | if [[ $DOG =~ $REPAT ]] | |
31 | then | |
32 | echo Dog ${BASH_REMATCH[2]} is ${BASH_REMATCH[3]} | |
33 | fi | |
34 | ||
35 | [[ $REPAT =~ "$REPAT" ]] && echo rematch 1 | |
36 | ||
37 | v="one two buckle my shoe" | |
38 | [[ ${v} =~ "one two" ]] && echo matches 7 | |
39 | ||
40 | [[ ${v} =~ (one two) ]] && echo matches 8 | |
41 | ||
42 | [[ ${v} =~ one\ two ]] && echo matches 9 | |
43 | ||
44 | unset pattern string | |
45 | pattern="xxx.yyy" | |
46 | string=xxxAyyy | |
47 | ||
48 | [[ $string =~ $pattern ]] && echo unquoted matches | |
49 | [[ $string =~ "$pattern" ]] && echo quoted matches | |
50 | ||
51 | # problems in pre-patched bash-4.2 | |
52 | [[ "hello\ 1world" =~ llo\ 1 ]] && echo match control-a 1 | |
53 | [[ "hello\ 1world" =~ \ 1world ]] && echo match control-a 2 | |
54 | [[ "hello\ 1world" =~ \ 1world$ ]] && echo match control-a 3 | |
55 | [[ "hello\ 1world" =~ \ 1 ]] && echo match control-a 4 | |
56 | [[ "hello\ 1world" =~ o\ 1world$ ]] && echo match control-a 5 |