⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 posixpat.tests

📁 android-w.song.android.widget
💻 TESTS
字号:
# A test suite for the POSIX.2 (BRE) pattern matching codeLC_ALL=CLANG=C# First, test POSIX.2 character classescase e in[[:xdigit:]])	echo ok 1;;esaccase a in[[:alpha:]123])	echo ok 2;;esaccase 1 in[[:alpha:]123])	echo ok 3;;esaccase 9 in[![:alpha:]])	echo ok 4;;esac# invalid character class expressions are just characters to be matchedcase a in[:al:])		echo ok 5;;esaccase a in[[:al:])	echo ok 6;;esaccase '!' in[abc[:punct:][0-9])	echo ok 7;;esac# let's try to match the start of a valid sh identifiercase 'PATH' in[_[:alpha:]]*)	echo ok 8;;esac# let's try to match the first two characters of a valid sh identifiercase PATH in[_[:alpha:]][_[:alnum:]]*)	echo ok 9;;esac# is ^C a cntrl character?case $'\003' in[[:cntrl:]])	echo ok 10;;esac# how about A?case A in[[:cntrl:]])	echo oops -- cntrl ;;*)		echo ok 11;;esaccase 9 in[[:digit:]])	echo ok 12;;esaccase X in[[:digit:]])	echo oops -- digit;;*)		echo ok 13;;esaccase $'\033' in[[:graph:]])	echo oops -- graph;;*)		echo ok 14;;esaccase $'\040' in[[:graph:]])	echo oops -- graph 2;;*)		echo ok 15;;esaccase ' ' in[[:graph:]])	echo oops -- graph 3;;*)		echo ok 16;;esaccase 'aB' in[[:lower:]][[:upper:]])	echo ok 17;;esaccase $'\040' in[[:print:]])	echo ok 18;;*)		echo oops -- print;;esaccase PS3 in[_[:alpha:]][_[:alnum:]][_[:alnum:]]*)	echo ok 19;;esaccase a in[[:alpha:][:digit:]])	echo ok 20;;*)			echo oops - skip brackpat ;;esaccase a in[[:alpha:]\])	echo oops -- dangling backslash in brackpat ;;*)		echo ok 21 ;;esac# what's a newline?  is it a blank? a space?case $'\n' in[[:blank:]])	echo ok -- blank ;;[[:space:]])	echo ok -- space ;;*)		echo oops newline ;;esac# OK, what's a tab?  is it a blank? a space?case $'\t' in[[:blank:]])	echo ok -- blank ;;[[:space:]])	echo ok -- space ;;*)		echo oops newline ;;esac# let's check out characters in the ASCII rangecase $'\377' in[[:ascii:]])	echo oops -- ascii\?;;esaccase 9 in[1[:alpha:]123]) echo oops 1;;esac# however, an unterminated brace expression containing a valid char class# that matches had better failcase a in[[:alpha:])	echo oops 2;;esaccase $'\b' in[[:graph:]])	echo oops 3;;esaccase $'\b' in[[:print:]])	echo oops 4;;esaccase $' ' in[[:punct:]])	echo oops 5;;esac# Next, test POSIX.2 collating symbolscase 'a' in[[.a.]])	echo ok 1;;esaccase '-' in[[.hyphen.]-9])	echo ok 2;;esaccase 'p' in[[.a.]-[.z.]])	echo ok 3;;esaccase '-' in[[.-.]])	echo ok 4;;esaccase ' ' in[[.space.]])	echo ok 5;;esaccase ' ' in[[.grave-accent.]])	echo oops - grave;;*)		echo ok 6;;esaccase '4' in[[.-.]-9])	echo ok 7;;esac# an invalid collating symbol cannot be the first part of a rangecase 'c' in[[.yyz.]-[.z.]])	echo oops - yyz;;*)		echo ok 8;;esaccase 'c' in[[.yyz.][.a.]-z])   echo ok 9;;esac# but when not part of a range is not an errorcase 'c' in[[.yyz.][.a.]-[.z.]])   echo ok 10 ;;esaccase 'p' in[[.a.]-[.Z.]])		echo oops -- bad range ;; *)			echo ok 11;;esaccase p in[[.a.]-[.zz.]p])	echo ok 12;;*)			echo oops -- bad range 2;;esaccase p in[[.aa.]-[.z.]p])	echo ok 13;;*)			echo oops -- bad range 3;;esaccase c in[[.yyz.]cde])		echo ok 14;;esaccase abc in[[.cb.]a-Za]*)		echo ok 15;;esaccase $'\t' in[[.space.][.tab.][.newline.]])	echo ok 16;;esac# and finally, test POSIX.2 equivalence classescase "abc" in[[:alpha:]][[=b=]][[:ascii:]])	echo ok 1;;esaccase "abc" in[[:alpha:]][[=B=]][[:ascii:]])	echo oops -- =B=;;*)	echo ok 2 ;;esaccase a in[[=b=])		echo oops;;	# an incomplete equiv class is just a string*)		echo ok 3;;esac

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -