Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #18952

Re: Regexp exception in String.replaceAll

From Tim Slattery <Slattery_T@bls.gov>
Newsgroups comp.lang.java.programmer
Subject Re: Regexp exception in String.replaceAll
Date 2012-09-26 12:35 -0400
Organization A noiseless patient Spider
Message-ID <u0b668hvravflnt1upsks1rv0bnsmlt6us@4ax.com> (permalink)
References <7ku568loa4ogik4e6asouundcbcjurg6lj@4ax.com> <k3v3ic$9j4$1@dont-email.me>

Show all headers | View raw


Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> wrote:


>Read the Javadoc carefully:
>
><http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#replaceAll%28java.lang.String,%20java.lang.String%29>
>> Note that backslashes (\) and dollar signs ($) in the replacement 
>> string may cause the results to be different than if it were being 
>> treated as a literal replacement string; see Matcher.replaceAll. Use 
>> Matcher.quoteReplacement(java.lang.String) to suppress the special 
>> meaning of these characters, if desired. 

Yes, I had completely missed that. I thought it was a literal
replacement string.

In JSE4 and 5 the "replace" method took arguments of type "char". Now
I see that in JSE6 those arguments are CharSequence, an interface
which String implements. So before JSE6, if you needed String
arguments, you had a choice of ReplaceAll or ReplaceFirst. Since I
needed to allow for multiple occurrences of the replace string, I had
to use ReplaceAll, and I missed this trap. (And I never considered
that anybody would use a dollar sign in a filename!). Now that we're
using JSE6, I can just change it to call replace instead of
replaceAll.

-- 
Tim Slattery
Slattery_T@bls.gov

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Regexp exception in String.replaceAll Tim Slattery <Slattery_T@bls.gov> - 2012-09-26 08:57 -0400
  Re: Regexp exception in String.replaceAll Arne Vajhøj <arne@vajhoej.dk> - 2012-09-26 09:13 -0400
  Re: Regexp exception in String.replaceAll Steven Simpson <ss@domain.invalid> - 2012-09-26 15:18 +0100
  Re: Regexp exception in String.replaceAll Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2012-09-26 16:30 +0200
    Re: Regexp exception in String.replaceAll Tim Slattery <Slattery_T@bls.gov> - 2012-09-26 12:35 -0400
      Re: Regexp exception in String.replaceAll markspace <-@.> - 2012-09-26 10:00 -0700
        Re: Regexp exception in String.replaceAll Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2012-09-26 21:26 +0200
          Re: Regexp exception in String.replaceAll Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-09-26 13:27 -0700
            Re: Regexp exception in String.replaceAll markspace <-@.> - 2012-09-26 14:31 -0700
      Re: Regexp exception in String.replaceAll Lew <lewbloch@gmail.com> - 2012-09-26 13:32 -0700
  Re: Regexp exception in String.replaceAll Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-09-26 09:43 -0700
  Re: Regexp exception in String.replaceAll Roedy Green <see_website@mindprod.com.invalid> - 2012-09-27 12:10 -0700

csiph-web