Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio

Xueming Shen xueming.shen at oracle.com
Fri Apr 13 15:20:46 UTC 2012


Good catch. will fix it with next regex fix. Thanks!

On 4/13/2012 3:07 AM, Alan Bateman wrote:
> On 12/04/2012 21:09, 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/
>>
> I see this has already been pushed but one comment on the issue is 
> that it looks like the backslash case won't be exercised by the test 
> because the $ case will throw the expected IAE first.
>
> -Alan



More information about the core-libs-dev mailing list