Напишите функцию, которая заменяет во всей строке все римские числа на соответствующие десятичные числа - PascalABC.NET

Формулировка задачи:

Пример: Введите строку: В MMXIII году в школе CXXIII состоялся очередной выпуск XI классов. Результат: В 2013 году в школе 123 состоялся очередной выпуск 10-х классов.


textual

Код к задаче: «Напишите функцию, которая заменяет во всей строке все римские числа на соответствующие десятичные числа - PascalABC.NET»

// ...
var s : string := 'В MMXIII году в школе CXXIII состоялся очередной выпуск XI классов.';
 
begin
  s := Regex.Replace(s, '(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})', 
                        (m : System.Text.RegularExpressions.Match) -> Rim2Arab(m.Value).ToString());
  writeln(s);
end.
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.


СДЕЛАЙТЕ РЕПОСТ

15   голосов, оценка 4.067 из 5

Источник
Похожие ответы