มีเมธอด string.split () ในแพ็คเกจ java.lang และการส่งคืนเป็นอาร์เรย์
ฉันใช้บางส่วนในแอปพลิเคชันและฉันจะสรุปสำหรับการอ้างอิงของคุณเท่านั้น:
1. ถ้าคุณใช้ "." ในการแยกจะต้องเขียนดังนี้ string.split ("//.") เพื่อให้คุณสามารถแยกได้อย่างถูกต้อง String.split (".");
2. ถ้าคุณใช้ "|" ในการแยกจะต้องเขียนดังนี้ string.split ("// |") เพื่อให้คุณสามารถแยกได้อย่างถูกต้อง String.split ("|");
- และ "|" เป็นทั้งอักขระหลบหนีและต้องเพิ่มด้วย "//";
3. หากมีตัวคั่นหลายตัวในสตริงคุณสามารถใช้ "|" ตัวอย่างเช่นยัติภังค์ "acount =? และ uu =? หรือ n =?" ในการแยกทั้งสามและคุณสามารถใช้ string.split ("และ | หรือ");
เมื่อใช้เมธอด string.split เพื่อกำหนดสตริงหากตัวคั่นใช้อักขระพิเศษบางอย่างอาจไม่ได้ผลลัพธ์ที่เราคาดหวัง
มาดูคำอธิบายในเอกสาร JDK
สตริงสาธารณะ [] split (string regex)
แยกสตริงนี้รอบการจับคู่ของนิพจน์ทั่วไปที่กำหนด
พารามิเตอร์ regex เป็นรูปแบบการจับคู่การแสดงออกปกติแทนสตริงง่าย ๆ มันอาจให้ผลลัพธ์ที่ไม่คาดคิดสำหรับอักขระพิเศษบางอย่างเช่นการใช้เส้นแนวตั้ง | ในการแยกสตริงในรหัสต่อไปนี้คุณจะไม่ได้รับผลลัพธ์ที่คาดหวัง
String [] AA = "AAA | BBB | CCC" .SPLIT ("|"); // String [] AA = "AAA | BBB | CCC" .SPLIT ("// |"); เพื่อให้ได้ผลลัพธ์ที่ถูกต้องสำหรับ (int i = 0; i <aa.length; i ++) {system.out.println ("-"+aa [i]); -การรันสตริงที่มีแนวตั้ง * จะโยน java.util.regex.patternsyntaxexception ยกเว้นเช่นเดียวกับเครื่องหมายบวก +
สตริง [] aa = "aaa*bbb*ccc" .split ("*"); // string [] aa = "aaa | bbb | ccc" .split ("//*"); เพื่อให้ได้ผลลัพธ์ที่ถูกต้องสำหรับ (int i = 0; i <aa.length; i ++) {system.out.println ("-"+aa [i]); -เห็นได้ชัดว่า + * ไม่ใช่นิพจน์กฎการจับคู่รูปแบบที่ถูกต้อง คุณสามารถรับผลลัพธ์ที่ถูกต้องหลังจากหลบหนีด้วย "//*" "//+"
แม้ว่า "|" เป็นไปได้เมื่อแยกสตริงมันไม่ใช่จุดประสงค์ที่ตั้งใจไว้ หลังจากหลบหนีของ "// |" สามารถรับผลลัพธ์ที่ถูกต้องได้
นอกจากนี้หากคุณต้องการใช้อักขระ "/" ในสตริงคุณต้องหลบหนีด้วย ก่อนอื่นคุณต้องแสดงสตริง "AAAA/BBBBB" หากคุณต้องการแยกออกคุณควรได้รับผลลัพธ์ที่ถูกต้อง
String [] aa = "aaa // bbb // bccc" .split (////);
ข้างต้นเป็นคำอธิบายที่สมบูรณ์ของบทสรุปการใช้งานของ java string.split () แนะนำให้คุณรู้จักโดยบรรณาธิการ ฉันหวังว่ามันจะเป็นประโยชน์กับคุณ หากคุณต้องการทราบข้อมูลเพิ่มเติมโปรดใส่ใจกับ wulin.com!