我有一个文件包含几行类似于:
原文链接:https://www.f2er.com/regex/356846.htmlName: Peter Address: St. Serrano número 12,España Country: Spain
我需要使用正则表达式提取地址,考虑到它可以包含点,特殊字符(ñ,ç),áéíó…
目前的代码有效,但看起来很难看:
Pattern p = Pattern.compile("^(.+?)Address: ([a-zA-Z0-9ñÑçÇáéíóú.,]+)(.+?)$",Pattern.MULTILINE | Pattern.DOTALL); Matcher m = p.matcher(content); if (m.matches()) { ... }
编辑:地址字段也可以分为多行
Name: Peter Address: St. Serrano número 12,Madrid España Country: Spain
编辑:我不能使用Properties对象或YAML解析器,因为该文件也包含其他类型的信息.