Выражение регулярного выражения для подсчета только нулей в строке

Я пытаюсь подсчитать количество нулей в строке чисел. Не просто символ 0, а цифра ноль. например Я хочу подсчитать 0, 0,0, 0,000 и т. Д. Числа будут разделены пробелами, например:

1.0 5.0 1 5.4 12 0.1 14.2675 0.0 0.00005

Простой поиск «0» в строке почти выполняет свою работу (я должен сначала вставить ведущий пробел в строке, чтобы это работало - в случае, если первое число - ноль). Однако это не работает для чисел в форме 0.x , например. 0,1 , 0,02 и т. Д. Я полагаю, мне нужно проверить 0 и посмотреть, есть ли десятичная точка, а затем ненулевые числа после нее, но я понятия не имею, как это сделать. Что-то вроде:

"0 * | (0 \\. (?! \\ [1-9 \\])"

У кого-нибудь есть идеи, как я могу это сделать? Желательно использовать регулярное выражение. Или, если проще, я с удовольствием посчитаю количество ненулевых элементов. Спасибо.

ПРИМЕЧАНИЕ. Для этого я использую split в Java (разделите строку с помощью регулярного выражения и затем подсчитайте с помощью .length () ).

0
задан MadScone 30 October 2011 в 21:41
поделиться