Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.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/regex/16.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,在关于对邮政街道地址进行消毒的调查中,其中一位受访者推荐了以下解决方案: addressString.replace(/^\s*[0-9]+\s*(?=.*$)/,''); 这可能是一个有效的正则表达式调用,但在Java中无效 我尝试将此Java代码更改为以下内容,但未成功: addressString.replaceAll("/^\\s*[0-9]+\\s*(?=.*$)/","") 但该代码对我测试的地址没有影响: 310 W 50th Street 我没有正确地将其转换为Java吗?

在关于对邮政街道地址进行消毒的调查中,其中一位受访者推荐了以下解决方案:

addressString.replace(/^\s*[0-9]+\s*(?=.*$)/,'');
这可能是一个有效的正则表达式调用,但在Java中无效

我尝试将此Java代码更改为以下内容,但未成功:

addressString.replaceAll("/^\\s*[0-9]+\\s*(?=.*$)/","")
但该代码对我测试的地址没有影响:

310 W 50th Street

我没有正确地将其转换为Java吗?

您需要去掉开头和结尾的正斜杠


将来,你可能会要求澄清答案本身,而不是开始一个新问题。很抱歉,我本来想让给出答案的人自己把它翻译成有效的Java,但是忘了。

您不需要Java中的斜杠

addressString.replaceAll("^\\s*[0-9]+\\s*(?=.*$)","")

您需要去掉开头和结尾的斜线:

addressString.replaceAll("^\\s*[0-9]+\\s*(?=.*$)","")

它们用于引用某些语言中的正则表达式,但Java只使用“

编辑以支持以数字开头的街道名称:

请尝试以下Java字符串:

"^\\s*[0-9]+\\s*(?=.*$)". 

仅供参考,您不需要在结尾处使用
(?=.*$)
@ElRonnoco在回答中纠正了这一点: