X-Git-Url: https://git.plutz.net/?p=confetti;a=blobdiff_plain;f=cards%2Flist.sh;h=8b9cd06dd3f0dfe3f187c251dea6d1791d8701b5;hp=74ad0200f45f6e96b57dbd65c9862003b2450144;hb=d62152dd1da767031ca421064a826964952cef77;hpb=b5ffb9d90da32513277d4c65a4a0e37854d4dee2 diff --git a/cards/list.sh b/cards/list.sh index 74ad020..8b9cd06 100755 --- a/cards/list.sh +++ b/cards/list.sh @@ -128,21 +128,23 @@ filter_cards(){ | sed -E 's;[]\/\(\)\\\$\?\.\+\*\;\[\{\}];\\\\&;g; '"$upcase" )^" + debug "FILTER: $filter" while [ "$filter" ]; do f="${filter%%^*}" filter="${filter#*^}" case $f in '') break ;; - ANY:*) fex="/\n.*(\;[^:]*)?:.*(${f#*:}).*\r?\n/{${fex}}" + ANY:*) fex="/\n.*(\;[^:]*)?:[^\n]*(${f#*:})[^\n]*\r?\n/{${fex}}" ;; - NAME:*) fex="/\n(N|FN|NICKNAME)(\;[^:]*)?:.*(${f#*:}).*\r?\n/{${fex}}" + NAME:*) fex="/\n(N|FN|NICKNAME)(\;[^:]*)?:[^\n]*(${f#*:})[^\n]*\r?\n/{${fex}}" ;; - STREET:*|ZIP:*) fex="/\nADR(\;[^:]*)?:.*(${f#*:}).*\r?\n/{${fex}}" + STREET:*|ZIP:*) fex="/\nADR(\;[^:]*)?:[^\n]*(${f#*:})[^\n]*\r?\n/{${fex}}" ;; - *) fex="/\n${f%%:*}(\;[^:]*)?:.*(${f#*:}).*\r?\n/{${fex}}" + *) fex="/\n${f%%:*}(\;[^:]*)?:[^\n]*(${f#*:})[^\n]*\r?\n/{${fex}}" ;; esac + debug "FEX: $fex" done for cardfile in "${_DATA}"/vcard/*.vcf; do