Java正则表达式考虑空值

时间:2015-11-26 17:22:59

标签: java regex

我有一些键值对 - 键(值)

示例数据 -

name(alex)
crimehistory
address(newland)

我正在逐行处理数据并希望获取键值对。如果值不存在,则应为null(crimehistory)。

我目前的正则表达式是 -

String pattern = "^(?<key>.*?)\\((?<value>.*)\\)";

但它只为名字和地址带来了关键价值。我应该在正则表达式中修改什么,以便它获得具有空值的关键'crimehistory'?

1 个答案:

答案 0 :(得分:4)

使第二部分可选。

^(?<key>.*?)(?:\\((?<value>.*)\\))?$

DEMO