SORU
10 Mayıs 2010, PAZARTESİ


Nasıl alfasayısal metin sıfırları kaldırmak için?

YANİ sıfırları burada önek hakkında sorular gördüm. Ama başka bir ihtimal yok.

Alfasayısal metin sıfırları kaldırmak için nasıl bana tavsiye edebilir misiniz? Dahili API var ya sıfırları kesmek için bir yöntem yazmak gerekir mi?

Örnek:

01234 converts to 1234
0001234a converts to 1234a
001234-a converts to 1234-a
101234 remains as 101234
2509398 remains as 2509398
123z remains as 123z
000002829839 converts to 2829839

CEVAP
10 Mayıs 2010, PAZARTESİ


Düzenli iş için en iyi araçtır; ne olacak, sorun belirtimi bağlıdır. Aşağıdaki öndeki sıfırları kaldırır, ama gerekirse (yani sadece boş bir dize için "0" yerinden kımıldamadı) bırakır.

s.replaceFirst("^0 (?!$)", "")

^ bağlantı 0 eşleşen giriş başında olduğundan emin olun. (?!$) negatif ileri yönlü değil, tüm dize uyumlu olmasını sağlar.

Test koşum:

String[] in = {
    "01234",         // "[1234]"
    "0001234a",      // "[1234a]"
    "101234",        // "[101234]"
    "000002829839",  // "[2829839]"
    "0",             // "[0]"
    "0000000",       // "[0]"
    "0000009",       // "[9]"
    "000000z",       // "[z]"
    "000000.z",      // "[.z]"
};
for (String s : in) {
    System.out.println("["   s.replaceFirst("^0 (?!$)", "")   "]");
}

Ayrıca Bkz

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Kenneth Håkonsen

    Kenneth Håk

    13 Mart 2011
  • Moodle

    Moodle

    11 Mayıs 2010
  • RealPapaPit

    RealPapaPit

    16 Mart 2009