\A,\z和^,$的主要差別在使用了RegexOptions.Multiline多行模式上,看下面兩個(gè)示例:
string pattern = @"^abc";
string str = "zzz\nabc";
Regex regex = new Regex(pattern, RegexOptions.Multiline);
bool b = regex.IsMatch(str);
Console.WriteLine(b);
//True
string pattern = @"\Aabc";
string str = "zzz\nabc";
Regex regex = new Regex(pattern, RegexOptions.Multiline);
bool b = regex.IsMatch(str);
Console.WriteLine(b);
//False
再看MSDN的敘述:
^
指定匹配必須出現在字符串的開(kāi)頭或行的開(kāi)頭。有關(guān)更多信息,請參閱正則表達式選項中的 Multiline 選項。
$
指定匹配必須出現在以下位置:字符串結尾、字符串結尾的 \n 之前或行的結尾。有關(guān)更多信息,請參閱正則表達式選項中的 Multiline 選項。
\A
指定匹配必須出現在字符串的開(kāi)頭(忽略 Multiline 選項)。
\Z
指定匹配必須出現在字符串的結尾或字符串結尾的 \n 之前(忽略 Multiline 選項)。
\z
指定匹配必須出現在字符串的結尾(忽略 Multiline 選項)。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。