Pertanyaan Java menghapus karakter non numerik dari string kecuali x


Saya mencoba menghapus semua karakter non numerik dari string kecuali untuk x. Saya agak bingung.

kode saya saat ini

number.replaceAll("[^\\d\\x]", "")

Terima kasih sebelumnya.


7
2018-05-22 18:53


asal


Jawaban:


Gunakan ini: [^x0-9]

Anda dapat memeriksanya http://gskinner.com/RegExr/


20
2018-05-22 18:59



Ekspresi reguler Anda

number.replaceAll("[^\\dxX]+", "");

Tidak perlu keluar dari karakter normal di dalam kelas karakter. Peningkatan juga memiliki kuantifier + setelah kelas karakter, dengan cara itu urutan karakter tersebut diganti sekaligus dan tidak masing-masing char sendiri.

Baca beberapa dasar-dasar regex Xisb: Apa yang benar-benar harus diketahui oleh setiap Programmer tentang ekspresi reguler


7
2018-05-22 19:59



Anda harus menggunakan ini:

number.replaceAll("[\\D&&[^x]]", "")

0
2018-05-22 19:07



Saya tahu, mungkin ada cara yang lebih baik untuk melakukannya.

number.replaceAll("[^\\d+xX]", "");

0
2018-05-22 19:01