Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.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/4/video/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,从理论上的计算机科学中,我们知道确定一种规则语言是否为空的问题是可以判定的 有没有办法检查Java正则表达式是否表示空语言,或者换句话说,是否不存在与之匹配的字符串 注意,我不是问是否存在不匹配的正则表达式,也不是问这样的正则表达式是什么。我知道有,而且它们是无限的。我在问如何识别它们。Java的正则表达式(以及其他语言中的许多REs)不是学术正则表达式——它们是超集,功能更强大。例如,它们的lookahead和backreference使regexps描述的语言变得不规则。我可能错了(我对这个

从理论上的计算机科学中,我们知道确定一种规则语言是否为空的问题是可以判定的

有没有办法检查Java正则表达式是否表示空语言,或者换句话说,是否不存在与之匹配的字符串

注意,我不是问是否存在不匹配的正则表达式,也不是问这样的正则表达式是什么。我知道有,而且它们是无限的。我在问如何识别它们。

Java的正则表达式(以及其他语言中的许多REs)不是学术正则表达式——它们是超集,功能更强大。例如,它们的lookahead和backreference使regexps描述的语言变得不规则。我可能错了(我对这个主题很生疏),但正如@yeputons所说,Java所谓的“正则表达式”实际上是不可判定的。我相信它们的不确定性可以回答您的问题“不,这是不可能的。”Java的正则表达式(以及其他语言中的许多REs)不是学术正则表达式——它们是超集,功能更强大。例如,它们的lookahead和backreference使regexps描述的语言变得不规则。我可能错了(我对这个主题很生疏),但正如@yeputons所说,Java所谓的“正则表达式”实际上是不可判定的。我相信他们的不确定性会回答你的问题“不,这不可能。”