SORU
9 Kasım 2009, PAZARTESİ


String.replaceAll çift ters eğik çizgi ile bölü

String \\something\\ replaceAll ama her türlü hataları alıp duruyorum kullanarakString \something\ convert etmeye çalışıyorum. Bu çözüm düşündüm:

theString.replaceAll("\\", "\\\\");

Ama bu durum, aşağıdaki verir:

java.util.regex.PatternSyntaxException: Unexpected internal error near index 1

CEVAP
9 Kasım 2009, PAZARTESİ


String#replaceAll() regular expression bir bağımsız değişken olarak yorumlar. \ kaçış karakteriher ikisi deString regex. Çift kaçış düzenli ifade için:

string.replaceAll("\\\\", "\\\\\\\\");

Ama ille sadece-karakter-karakter aynısından istiyorum çünkü bunun için düzenli ihtiyacın yok ve desenler burada gerek yok. String#replace() yeterli olacaktır:

string.replace("\\", "\\\\");

Güncelleme: yorumlar başı olarak, JavaScript bağlamda dize kullanmak istiyor gibisin. Belki de daha iyi StringEscapeUtils#escapeEcmaScript() yerine daha çok karakter karşılamak için kullanmak istiyorum.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Huot Media

    Huot Media

    7 Mayıs 2010
  • Kurtindo Pop Games

    Kurtindo Pop

    2 HAZİRAN 2013
  • RiverCityGraphix

    RiverCityGra

    6 Ocak 2012