Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java正则表达式解释_Java_Regex - Fatal编程技术网

Java正则表达式解释

Java正则表达式解释,java,regex,Java,Regex,有人能给我解释一下\\A和\\z的意思吗?我假设它们在这个正则表达式中有特殊的含义,因为它们被转义(但我可能错了,它们可能分别代表a和z)。谢谢 \A表示“字符串开始”,而\z表示“字符串结束” 在此上下文中,您可能已经看到了^和$,但它们的含义可能会有所不同:如果您使用模式.MULTILINE编译正则表达式,则它们的含义将更改为“行的开始”和“行的结束”。\A和\z的含义从未改变 还有\Z,意思是“字符串结尾,在任何尾随换行符之前”,这类似于$在多行模式下所做的操作(如果有换行符,则在换行符之

有人能给我解释一下
\\A
\\z
的意思吗?我假设它们在这个正则表达式中有特殊的含义,因为它们被转义(但我可能错了,它们可能分别代表a和z)。谢谢

\A
表示“字符串开始”,而
\z
表示“字符串结束”

在此上下文中,您可能已经看到了
^
$
,但它们的含义可能会有所不同:如果您使用
模式.MULTILINE
编译正则表达式,则它们的含义将更改为“行的开始”和“行的结束”。
\A
\z
的含义从未改变

还有
\Z
,意思是“字符串结尾,在任何尾随换行符之前”,这类似于
$
在多行模式下所做的操作(如果有换行符,则在换行符之前匹配)。

此Java表达式:

Pattern.compile("\\A(\\d+)\\.(\\d+)\\z")
生成此正则表达式:

\A(\d+)\.(\d+)\z
其中
\A
表示“字符串开始”,而
\z
表示“字符串结束”

因此,该模式匹配由一个或多个数字加上一个小数点再加上一个或多个数字组成的任何字符串


有关Java正则表达式表示法的所有方面的详细信息,请参阅。

查看此参考

根据这一点,
\A
匹配输入的开始,而
\z
匹配输入的结束


它们前面有
\
而不是只有1个
\
的原因是
\
也在转义

检查这里:您需要两个反斜杠,因为在Java中,一个反斜杠转义下一个字符。因此,要实现\A,您需要\\A。这是Java的方式:)我想问\A和\z是否类似于^和$。谢谢你的解释!
\A(\d+)\.(\d+)\z