如何在java中提取与正则表达式匹配的模式
我在java中使用regex。我有一个文件,其中包含以下模式,后跟和后跟其他文本。模式:如何在java中提取与正则表达式匹配的模式,java,regex,Java,Regex,我在java中使用regex。我有一个文件,其中包含以下模式,后跟和后跟其他文本。模式: Bombay Garden 5995 Mowry Ave Newark, CA (510) 744-6945 Bombay Garden 172 E. 3rd Ave. San Mateo, CA (650) 548-9966 Bombay Garden 3701 El Camino Real Santa Clara, CA (408) 241-5150 我有下面
Bombay Garden 5995 Mowry Ave Newark, CA (510) 744-6945
Bombay Garden 172 E. 3rd Ave. San Mateo, CA (650) 548-9966
Bombay Garden 3701 El Camino Real Santa Clara, CA (408) 241-5150
我有下面匹配每一行的正则表达式。正则表达式:
(.*?)(\d{1,4})(\s*\w*)*(\w+),(\s*)(CA|AZ|NY)(\s*)(\(?[1-9]\d{2}\)?\s*\d{3}-?\d{4})
这与一行匹配,但我想使用Java提取三个分支中每个分支的街道名称、州和电话号码
有人能帮我吗?您可以使用
Matcher
对象的group()
Matcher m = Pattern.compile(yourRegex).matcher(yourString)
while (m.find())
{
System.out.println(m.group(1));
System.out.println(m.group(2));
String state = m.group(6);
...
}
组0是整个模式。组1是您的第一个捕获组,即在您的情况下m.Group(6)
将返回状态。@nem在Java中的oracle正则表达式教程中。祝你好运