Langsung saja, untuk membedakan
Angka dan Huruf kita hanya perlu perintah berikut ini:
blablabla.matches("[0-9]*")
Perintah diatas digunakan untuk
memilih atau membandingkan apakah ada yang memiliki unsur angka, jika kita ingin mencari mana yang bukan angka
maka tinggal kita letakkan didalam if else saja, saya punya contoh untuk
penggunaannya
contoh kasus:
- String kalimat = "k1234kl"; (contoh nomor
polisi)
- String kalimat = "kl 1234 kl"; (contoh nomor
polisi)
- Format huruf didepan maksimal dua
- Format angka ditengah maksimal empat
- Format huruf dibelakang maksimal tiga
pertanyaan :
- Bagaimana cara membedakan kalimat tersebut untuk angka
dan huruf pada kasus 1 dan kasus 2?
- Bagaimana mengubah format tersebut menjadi xx-xxxx-xx
pada kasus 1 dan kasus 2?
jawaban :
public static void main(String[]
args) {
String
kalimat = "k1234kl";
String
kalimat2 = "k 1234 kl";
String
kalimat3 = "k 1234";
String
kalimat4 = "ask 1234";
String
kalimat5 = "askk 23444 sdfs";
String c
= periksa_spasi(kalimat5);
System.out.println(c);
}
public static String formatstrip(String kalimat) {
public static String formatstrip(String kalimat) {
String[] kata = kalimat.split("");
String depan = "";
String tengah = "";
String belakang = "";
String nopol;
for (int i = 0; i < kata.length; i++) {
if (kata[i].matches("[0-9]*")) {
tengah = tengah + kata[i];
} else {
if (i < 4) {
depan = depan + kata[i];
} else {
belakang = belakang + kata[i];
}
}
}
if ("".equals(belakang)) {
nopol = depan + "-" + tengah;
} else {
nopol = depan + "-" + tengah + "-" +
belakang;
}
return nopol;
}
public static String menggabungkan_spasi(String kalimat) {
public static String menggabungkan_spasi(String kalimat) {
String[] kata = kalimat.split(" ");
String kalimat2 = "";
for (int i = 0; i < kata.length; i++) {
kalimat2 = kalimat2 + kata[i];
}
return kalimat2;
}
public static String periksa_spasi(String kalimat) {
public static String periksa_spasi(String kalimat) {
String[] jumlah = kalimat.split(" ");
String hasil = null;
String sementara;
if (jumlah.length == 1) {
hasil = formatstrip(kalimat);
} else if(jumlah.length == 2 || jumlah.length == 3){
sementara = menggabungkan_spasi(kalimat);
hasil = formatstrip(sementara);
} else{
}
return hasil;
}
Sekian yang dapat saya bagikan untuk teman-teman,
semoga tugasnya cepat kelar ya, :D
om kalo cara ngambil 10 karakter pertama string tuh bagaimana ya? mohon pencerahannya
BalasHapusString kalimat="helllllooooowww";
HapusSystem.out.println(kalimat.substring(0,2));
hasilnya:
he
terima kasih om solusinya, ini blog sharing/tutorial dengan reply tercepat yang pernah saya temui
Hapusmantap, malu bertanya lupa nama ibunya
Hapus