Rumah >Java >javaTutorial >Bagaimana untuk Memisahkan Teks Dipisahkan Koma Semasa Mengabaikan Koma Dalam Petikan di Jawa?

Bagaimana untuk Memisahkan Teks Dipisahkan Koma Semasa Mengabaikan Koma Dalam Petikan di Jawa?

Susan Sarandon
Susan Sarandonasal
2024-12-23 17:08:14776semak imbas

How to Split Comma-Separated Text While Ignoring Commas Within Quotes in Java?

Memisahkan Teks Dipisahkan Koma Mengabaikan Koma dalam Petikan

Menghuraikan teks yang mengandungi nilai dipisahkan koma boleh mencabar apabila nilai tertentu mengandungi koma dalam petikan . Menggunakan kaedah String.split Java dengan pembatas koma mudah selalunya menghasilkan nilai pecahan yang termasuk koma yang disebut ini. Isu ini memerlukan penyelesaian yang membezakan antara koma di luar dan dalam petikan.

Penyelesaian kepada masalah ini terletak pada ungkapan biasa. Coretan kod Java berikut menyediakan penyelesaian yang komprehensif:

String[] arr = str.split(",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)");

Ungkapan biasa ini membahagi rentetan berdasarkan koma yang tidak diikuti serta-merta dengan bilangan petikan berganda genap. Penjelasan terperinci ungkapan biasa adalah seperti berikut:

  • ,(?=: Pisahkan rentetan pada koma yang diikuti dengan ekspresi pandangan ke hadapan.
  • ( ?=(?:[^"]*"[^"]*")*[^"]*$): Ungkapan pandangan ke hadapan memastikan bahawa koma diikuti oleh nombor genap dua kali ganda petikan.

    • [^"]*: Memadankan sifar atau lebih aksara bukan petikan.
    • "[^"]*": Memadankan sepasang petikan berganda dengan bukan petikan aksara di antaranya.
    • *: Padan dengan ungkapan sebelumnya sifar atau lebih kali (bilangan genap ganda petikan).
    • [^"]*$: Memastikan ekspresi pandangan ke hadapan sepadan sehingga penghujung rentetan, menghalang setiap koma daripada mencetuskan perpecahan.

Dengan menggunakan ungkapan biasa ini, anda boleh memisahkan teks yang dipisahkan koma dengan berkesan, mengabaikan koma dalam petikan berganda Pendekatan ini membolehkan anda menghuraikan teks dengan cara yang boleh dipercayai, memastikan nilai petikan kekal utuh.

Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Teks Dipisahkan Koma Semasa Mengabaikan Koma Dalam Petikan di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn