Wild cards cannot be used with substitute.
Let ( T = Filter ( YourDNSFieldHere ; "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz()" ) ; // removes digits
Substitute ( T ; ["(" ; "." ] ; [")" ; "" ] )
But I am also making the assumption that no text appears outside of the parenthesis that needs to be kept as part of the resulting text.
To handle all possible variations to what you see here might require either a looping script or a recursive custom function (requires FileMaker Advanced).
That actually works fairly well, but pulls numbers outside of the parenthesis that are legitimate parts of the domain name, like these...
Looks like I may have to preprocess the file before bringing it into FM.
Which is why I said: "But I am also making the assumption that no text appears outside of the parenthesis that needs to be kept as part of the resulting text."
You don't have to preprocess the data but that is an option.
Another option that might work is this:
Substitute ( YourTextFieldHere ; [(1) ; "." ] ; [(2) ; "." ] ; [(3) ; "." ] ; [(4) ; "." ] ; [(5) ; "." ] ; and so forth... [(10) ; "." ] )
But note that this also has a limitation in that values greater than (10) will not be processed.
And don't forget that you also have options where a script or recursive function makes the substitution.