You can solve the problem via constraint programming as follows. For each cell $(i,j)$, let integer decision variable $x_{i,j} \in [1,9]$ be the digit that appears in that cell. The usual sudoku rules yield 27 ALLDIFF constraints, one per row, column, or 3-by-3 box. For example,
the ALLDIFF constraint for row 1 is
$$\operatorname{ALLDIFF}(x_{1,1}, x_{1,2}, x_{1,3}, x_{1,4}, x_{1,5}, x_{1,6}, x_{1,7}, x_{1,8}, x_{1,9}),$$
the ALLDIFF constraint for column 1 is
$$\operatorname{ALLDIFF}(x_{1,1}, x_{2,1}, x_{3,1}, x_{4,1}, x_{5,1}, x_{6,1}, x_{7,1}, x_{8,1}, x_{9,1}),$$
and the ALLDIFF constraint for the top left 3-by-3 box is
$$\operatorname{ALLDIFF}(x_{1,1}, x_{1,2}, x_{1,3}, x_{2,1}, x_{2,2}, x_{2,3}, x_{3,1}, x_{3,2}, x_{3,3}).$$
For each of the 18 regions, there is also a global cardinality constraint (GCC). For example, the central plus-shaped region requires
$$\operatorname{GCC}(x_{3,5}, x_{4,5}, x_{5,3}, x_{5,4}, x_{5,5}, x_{5,6}, x_{5,7}, x_{6,5}, x_{7,5}; \{(2,1,1), (3,1,1), (4,1,1), (5,1,1), (7,1,1), (8,2,2), (9,2,2)\}).$$ The interpretation is that the seven variables in the first argument must together take the values 2, 3, 4, 5, and 7 once each and the values 8 and 9 twice each.