Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio
Xueming Shen
xueming.shen at oracle.com
Tue Apr 17 19:35:16 UTC 2012
Hi Paul, I'm fine with the more detailed the exception messages. Though
personally I don't
see the necessity of using String.format(...) for those String and
integer arguments, a simple
concatenation might be good enough here. Are you interested to start
from filing a new bug
on this issue and then go through the whole process to update these
exception message?
Thanks!
-Sherman
On 04/17/2012 10:02 AM, Paul Sandoz wrote:
> Hi Sherman,
>
> Here is an example:
>
> http://cr.openjdk.java.net/~psandoz/errors-in-matcher/webrev.0/
> <http://cr.openjdk.java.net/%7Epsandoz/errors-in-matcher/webrev.0/>
>
> I am not sure what, if any, are the JDK guidelines for stuffing
> information in exception messages.
>
> Paul.
>
> On Apr 16, 2012, at 10:24 AM, Paul Sandoz wrote:
>
>> Hi Sherman,
>>
>> IMHO it is worth spending a little time getting the exception
>> messages a little more accurate. I have spent too many a time staring
>> at such messages wondering what the heck is going on :-)
>>
>> e.g.
>>
>> Syntax error parsing replacement string: escaped literal character is
>> missing at the end of the string.
>>
>> Syntax error parsing replacement string: group reference is missing
>> at the end of the string.
>>
>>
>> Since i am proposing this i will send a patch. It will help me get
>> familiar with the whole OpenJDK process.
>>
>> Pau;.
>>
>> On Apr 12, 2012, at 10:09 PM, Xueming Shen wrote:
>>
>>> Hi
>>>
>>> Please help review the change for 7067045.
>>>
>>> The change is to throw a more meaningful IAE instead of the
>>> StringIndexoutputOfBoundsException
>>> if backslash or $ is the last character in the replacement string.
>>> (as the API indicated, the backslash
>>> and $ character in String's regex replacement and Matcher class have
>>> special meanings, backslash
>>> is for literal character escape and the $ is the capturing group
>>> reference, which needs a group index).
>>>
>>> http://cr.openjdk.java.net/~sherman/7067045/webrev/
>>> <http://cr.openjdk.java.net/%7Esherman/7067045/webrev/>
>>>
>>> Thanks,
>>> -Sherman
>>
>
More information about the core-libs-dev
mailing list