Unexpected result from StringLength of certain symbols

This is explained in the documentation:

If SyntaxLength returns a position past the end of the string, it
indicates that the string is syntactically correct as far as it goes,
but needs to be continued in order to correspond to input for a
complete Wolfram Language expression.

which is exactly what we see:

In[6]:= SyntaxLength["("]

Out[6]= 3
3 Likes

Thank you. Your reply makes sense, but it is misleading for the output of SyntaxLength to depend upon anything other than the string itself, without getting into speculations about what might lie “beyond” the string. No one would be ever be convicted of perjury if the defense can attach the right kind of “addendum” to every questionable statement.