2017-02-22 2 views
0

Я ищу инструмент (онлайн или для OSx), который может записывать числа в строке с использованием регулярного выражения, а затем суммировать эти числа и отображать сумму (и в идеале выполнять другие математические операции).Инструмент Regex для сбора чисел и вычисления суммы?

Я знаю, что, например, RegExr может перечислить все совпадения, но он не может выполнять какие-либо операции над ними.

Не уверен, что этот вопрос подходит для StackOverflow, но я уверен, что у многих разработчиков есть необходимость быстро и легко суммировать некоторые значения в выводах отладки (что именно то, что мне нужно сделать), поэтому я Я все равно бросаю его туда.

Я мог бы легко создать свой собственный инструмент, сделанный на заказ, но я уверен, что это принесет пользу всем нам (мне и тем, кто в этой теме ищет тот же инструмент), чтобы повторно использовать то, что уже существует а не каждый из нас изобретает собственное колесо.

+0

Звучит немного, как [это гольф вызов] (http://codegolf.stackexchange.com/q/47566), может быть, вы найдете что-то полезное там? Плюс был аналогичный вопрос, например. [этот] (http://stackoverflow.com/q/12941362/3890673), с некоторыми довольно обширными ответами – crusy

ответ

0

Это можно сделать, используя короткий кусок кода Ruby.

source = "zaw34r5vgfyt78uibv879gu" 

regex_numbers = /[0-9]+/ 
matches = source.scan(regex_numbers).collect { |str| str.to_f } 
result = matches.inject { |sum, x| sum + x } 

puts result 

Вы можете запустить его с помощью онлайн-переводчика, например, REPL.IT, или локально с помощью Ruby interpreter.

Операция, выполняемая каждый раз, может быть изменена путем изменения { |sum, x| sum + x }.

{ |product, x| product * x }

Смежные вопросы