Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.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
是什么使scala.util.matching.regex库与java.util.regex库不同?_Java_Regex_Scala - Fatal编程技术网

是什么使scala.util.matching.regex库与java.util.regex库不同?

是什么使scala.util.matching.regex库与java.util.regex库不同?,java,regex,scala,Java,Regex,Scala,作为一名学习Scala的Java开发人员,我很惊讶地发现。在我看来,主要的区别在于很多Scala操作返回一个选项[String]。这就是关键的区别,还是我在这些库的使用方式上遗漏了更多的地方?请参见以下内容: 此类委托给java平台的java.util.regex包。有关模式字符串的正则表达式语法的详细信息,请参阅java.util.regex.Pattern的文档 因此,使用的regex库是java.util.regex,因此,语法是相同的,所有缺点都是相同的 仅在Scala中,可以在三引号字

作为一名学习Scala的Java开发人员,我很惊讶地发现。在我看来,主要的区别在于很多Scala操作返回一个选项[String]。这就是关键的区别,还是我在这些库的使用方式上遗漏了更多的地方?

请参见以下内容:

此类委托给java平台的
java.util.regex
包。有关模式字符串的正则表达式语法的详细信息,请参阅
java.util.regex.Pattern
的文档

因此,使用的regex库是
java.util.regex
,因此,语法是相同的,所有缺点都是相同的

仅在Scala中,可以在三引号字符串中使用单反斜杠


如果要比较Scala中的方法,那么会有一些差异。一个很好的方法是
findAllIn
/
findAllMatchIn
和其他一些方法。

这个类委托给java平台的
java.util.regex
包。有关模式字符串的正则表达式语法的详细信息,请参阅
java.util.regex.Pattern
的文档因此,语法是相同的。仅在Scala中,您可以对
使用单个反斜杠“
-包含字符串。请阅读文档,以了解在模式匹配和其他便利性中的用法。”@som snytt为什么模式匹配和功能与java库不同?除了单个反斜杠褶皱之外,这些函数还有什么Scala特有的吗?对不起,我是指
match
expressions,
val r=“[ab]*”。r;“ba”匹配{case r()=>}
。可用方法的差异是因为findAllIn/findAllMatchIn性质的方法在使用Scala选项的上下文中更有意义吗?可能是为了方便起见。