我有一个包含几行的文件,类似于:
Name: 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 解析器,因为该文件也包含其他类型的信息。