Hey, forgot to mention: this is zsh 5.0.5. This case gets even weirder. The previous output I posted was gathered from zsh running with my normal RC files. The output actually differs if run with -f: ---------------------------------------- match case 1 match case 2 match case 3 match case 5 match case 6 ---------------------------------------- Meaning without any RCs case 2 matches, too! This is all very, very inconsistent… Still the same test script: ---------------------------------------- #!/bin/zsh export LC_ALL=C zmodload zsh/pcre setopt no_case_match line=Hello if [[ $line =~ He ]] print match case 1 if [[ $line =~ he ]] print match case 2 if [[ $line -pcre-match He ]] print match case 3 if [[ $line -pcre-match he ]] print match case 4 pcre_compile He pcre_match $line && print match case 5 pcre_compile -i He pcre_match $line && print match case 6 ---------------------------------------- Kind regards, mosu