Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

ลบเลขศูนย์นำหน้าออกจากสตริงใน Java โดยใช้นิพจน์ทั่วไป


replaceAll() เมธอดของคลาส String ยอมรับสองสตริงที่แสดงนิพจน์ทั่วไปและสตริงแทนที่ และแทนที่ค่าที่ตรงกันด้วยสตริงที่กำหนด

ต่อไปนี้เป็นนิพจน์ทั่วไปที่จะจับคู่เลขศูนย์นำหน้าของสตริง -

The ^0+(?!$)";

หากต้องการลบเลขศูนย์นำหน้าออกจากสตริง ให้ส่งค่านี้เป็นพารามิเตอร์แรกและ "" เป็นพารามิเตอร์ที่สอง

ตัวอย่าง

โปรแกรม Java ต่อไปนี้อ่านค่าจำนวนเต็มจากผู้ใช้ลงในสตริงและลบเลขศูนย์นำหน้าโดยใช้ นิพจน์ทั่วไป .

import java.util.Scanner;
public class LeadingZeroesRE {
   public static String removeLeadingZeroes(String str) {
      String strPattern = "^0+(?!$)";
      str = str.replaceAll(strPattern, "");
      return str;
   }
   public static void main(String args[]){
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter an integer: ");
      String num = sc.next();
      String result = LeadingZeroesRE.removeLeadingZeroes(num);
      System.out.println(result);
   }
}

ผลลัพธ์

Enter an integer:
000012336000
12336000