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

  • julioissk84life

    julioissk84l

    18 ŞUBAT 2008
  • Sam Kear

    Sam Kear

    14 Temmuz 2007
  • UlyssesForever's channel

    UlyssesForev

    28 ŞUBAT 2012