หลังจาก JDK 1.4 สตริงอ็อบเจ็กต์จะเรียก เมธอด String แทนที่ทั้งหมด (สตริง regex, การเปลี่ยนสตริง) เพื่อส่งคืนสตริง สตริงนี้เป็นสตริงย่อยในสตริงปัจจุบันที่ตรงกับนิพจน์ทั่วไปที่ระบุโดยพารามิเตอร์ regex สตริงที่ระบุโดยการแทนที่ เช่น:
Strings=123hel1o456bird.replaceAll([a-zA-Z]+, สวัสดี);
จากนั้น s คือสตริงที่ได้รับจากการแทนที่สตริงย่อยภาษาอังกฤษทั้งหมดใน 123hello456bird ด้วย hello นั่นคือ s คือ 123hello456hello
หมายเหตุ : การเรียกเมธอด REPLACEAll() บนสตริงปัจจุบันจะส่งคืนสตริง แต่จะไม่เปลี่ยนสตริงปัจจุบัน
หลังจาก JDK 1.4 คลาส String จัดเตรียมวิธีการปฏิบัติ public String[] split(String regex) เมื่อเรียกเมธอดนี้บนสตริง regex นิพจน์ทั่วไปที่ระบุโดยพารามิเตอร์จะถูกใช้เป็นตัวคั่นเพื่อแยกย่อยคำในนั้น และ คำจะถูกสลาย คำที่ได้จะถูกเก็บไว้ในอาร์เรย์สตริง ตัวอย่างเช่น สำหรับสตริง str:
Stringstr=1 ตุลาคม พ.ศ. 2492 เป็นวันที่สาธารณรัฐประชาชนจีนก่อตั้งขึ้น
หากคุณต้องการแยกคำที่ประกอบด้วยอักขระตัวเลขทั้งหมด คุณต้องใช้สตริงที่ไม่ใช่ตัวเลขเป็นตัวคั่น ดังนั้น นิพจน์ทั่วไป String regex=\D+ สามารถใช้เป็นตัวคั่นเพื่อแยกคำใน str:
StringdigitWord[]=str.split(regex);
จากนั้น digitWord[0], digitWord[1] และ digitWord[2] คือ 1949, 10 และ 1 ตามลำดับ