正则表达式中\A,\z和^,$的区别
来源:百度文库 编辑:神马文学网 时间:2024/05/21 00:53:34
正则表达式中\A,\z和^,$的区别http://topic.csdn.net/t/20060802/23/4923167.html
\A,\z和^,$的主要差别在使用了RegexOptions.Multiline多行模式上,看下面两个示例:
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的叙述:
^
指定匹配必须出现在字符串的开头或行的开头。有关更多信息,请参阅正则表达式选项中的 Multiline 选项。
$
指定匹配必须出现在以下位置:字符串结尾、字符串结尾的 \n 之前或行的结尾。有关更多信息,请参阅正则表达式选项中的 Multiline 选项。
\A
指定匹配必须出现在字符串的开头(忽略 Multiline 选项)。
\Z
指定匹配必须出现在字符串的结尾或字符串结尾的 \n 之前(忽略 Multiline 选项)。
\z
指定匹配必须出现在字符串的结尾(忽略 Multiline 选项)。
\A,\z和^,$的主要差别在使用了RegexOptions.Multiline多行模式上,看下面两个示例:
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的叙述:
^
指定匹配必须出现在字符串的开头或行的开头。有关更多信息,请参阅正则表达式选项中的 Multiline 选项。
$
指定匹配必须出现在以下位置:字符串结尾、字符串结尾的 \n 之前或行的结尾。有关更多信息,请参阅正则表达式选项中的 Multiline 选项。
\A
指定匹配必须出现在字符串的开头(忽略 Multiline 选项)。
\Z
指定匹配必须出现在字符串的结尾或字符串结尾的 \n 之前(忽略 Multiline 选项)。
\z
指定匹配必须出现在字符串的结尾(忽略 Multiline 选项)。
正则表达式中\A,\z和^,$的区别
JAVA中正则表达式的使用
常用的匹配正则表达式和实例
常用的匹配正则表达式和实例
【正则表达式专题】正则表达式的应用
JS的正则表达式
常用的正则表达式
java中使用正则表达式
正则表达式的字符,定位字符和重复字符
正则表达式的终极能力 - 递归(在.NET的正则表达式实现中匹配嵌套结构的方法)
Java正则表达式的总结
java 正则表达式的使用
一些常用的正则表达式
Extjs 正则表达式的判断
常用的一些正则表达式
在UltraEdit中使用正则表达式
在UltraEdit中使用正则表达式
正则表达式
正则表达式
正则表达式
正则表达式
正则表达式
精通正则表达式_NFA、DFA和POSIX
正则表达式:正则表达式基础