什么是元字符
編輯元字符是一個對計算機程序具有特殊意義的字符,如shell解釋器或正則表達式(regex)引擎。在POSIX擴展的正則表達式中,有14個元字符必須被轉義(前面是反斜杠()),以便放棄它們的特殊含義,在表達式中按字面意思處理:開頭和結尾的方括號([和]);反斜杠();省略號();美元符號($);句號/句號/點(.);豎條/管道符號(|);問號(?);星號(*);加號和減號(+和-);開頭和結尾的大括號/括弧({和});以及開頭和結尾的小括號((和))。例如,要用一個詞組匹配算術表達式(1+1)*3=6,正確的詞組是(1+1)*3=6;否則,小括號、加號和星號將有特殊含義。
其他例子
編輯其他一些字符在某些環境中可能有特殊含義。在一些Unixshells中,分號(;)是一個語句分隔符。在XML和HTML中,安培號(&)引入了一個HTML實體。在一些Unixshells和MS-DOS/WindowsCommandPrompt中,小于號和大于號(<和>)用于重定向,反斜線/重音符(`)用于命令替換。在許多編程語言中,字符串用引號(或')來限定。在某些情況下,轉義字符(和其他方法)被用來避免分隔符的碰撞,例如:Hesaid,Hello.在printf格式的字符串中,百分號(%)被用來引入格式指定符,必須被轉義為%,才能按字面解釋。在SQL中,百分號被用作通配符。在SQL中,下劃線(_)被用來匹配任何單個字符。
轉義術語轉義元字符意味著使元字符無效(剝離其特殊含義),使其具有字面含義。例如,在PCRE中,一個點(.)代表任何一個字符。正則表達式A.C將匹配ABC,A3C,甚至AC。然而,如果轉義了.,它將失去作為元字符的意義,而被解釋為字面意思,導致正則表達式A.C只匹配字符串A.C。在反義詞和其他地方轉義一個字符的通常方法是在它前面加上反斜杠()。其他環境可能采用不同的方法,如MS-DOS/Windows命令提示符,其中使用了一個圓點()來代替。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/163982/