it would be easier, if you upload a 3dm with the surface.
To answer your question, you could use MeshMashine for example, if you don’t care, if it is a mesh or a nurbs-surface. With MeshMashine, you can set the edge lengths of the trianlge and the resolution. The result depends strongly on your input surface.
Another approach would be to divide the surface to points, combine them to “triangles” ( diagrid ) , draw polylines, split the surface with the polylines. This way, you will stay with nurbs-surfaces at the end.
Paneling Tools is a great plugin for these kind of works ( and for everything with patterns)
I hope it helps you,