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

  • Canal TekZoom

    Canal TekZoo

    1 NİSAN 2012
  • Disney Pets and Animals

    Disney Pets

    29 ŞUBAT 2012
  • newport83

    newport83

    19 HAZİRAN 2006