Я хочу разбить несколько строк, похожих на name: john, id: 20, dest: toledo, from: seattle, date_time: [2/8/12 15:48:01:837 MST]
, только на следующие токены:
john
20
toledo
seattle
[2/8/12 15:48:01:837 MST]
Я делаю это
String delims = "(name|id|dest|from|date_time)?[:,\\s]+";
String line = "name: john, id: 20, dest: toledo, from: seattle, date_time: [2/8/12 15:48:01:837 MST]";
String[] lineTokens = line.split(delims, 5);
for (String t : lineTokens)
{
// for debugging
System.out.println (t);
// other processing I want to do
}
, но каждый четный элемент в lineTokensоказывается либо пустым, либо просто пробелом.Каждый нечетный элемент в lineTokens - это то, что я хочу, т.е. lineTokens [0] - это "", lineTokens [1] - это "Джон", lineTokens [2] - это "", lineTokens [3] - это "20" и т. Д.что я делаю не так?