Your english is doing just fine.

The process I used is adaptable to any shape and is called boolean subtract. One creates the primary shape, then the secondary shape (cylinders in an array) is created in such a manner as to meet your requirements. The two are "booleaned" which is not really a word and the result is as you have seen in my images.

Vertical cylinders are easily printed, horizontal versions are much more difficult.

I think the challenge is to create the subtractive array to meet your requirements.