Введение
В этом практическом занятии вы научитесь удалять числовые значения из строки на Java. Строки на Java могут содержать буквенно-цифровые символы и специальные символы. Поэтому иногда необходимо отфильтровать строку, чтобы оставить только буквы. В этом практическом занятии мы будем использовать метод replaceAll(), который принимает два аргумента: регулярное выражение для фильтрации строки и строку-заменитель.
Создайте новый файл на Java
Перейдите в каталог ~/project и создайте новый Java-файл с помощью следующей команды:
touch RemoveNumericValues.java
Определите метод main()
Откройте файл RemoveNumericValues.java в текстовом редакторе и определите метод main() следующим образом:
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "House123sector4";
System.out.println("Original String: " + str);
}
}
Используйте регулярные выражения для удаления числовых значений
В этом шаге мы будем использовать регулярные выражения для удаления числовых значений из строки.
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "House123sector4";
System.out.println("Original String: " + str);
str = str.replaceAll("[^A-Za-z]", "");
System.out.println("String with only Alphabets: " + str);
}
}
В коде выше мы использовали метод replaceAll(), чтобы заменить все символы, кроме букв, в строке str. Регулярное выражение [A-Za-z] будет соответствовать всем символам от A до Z и от a до z.
Используйте регулярные выражения для удаления цифр
В этом шаге мы будем использовать регулярные выражения для удаления цифр из строки.
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "House123sector4";
System.out.println("Original String: " + str);
str = str.replaceAll("\\d", "");
System.out.println("String with only Alphabets: " + str);
}
}
В коде выше мы использовали метод replaceAll(), чтобы заменить все цифры в строке str. Регулярное выражение \\d будет соответствовать всем цифрам, присутствующим в строке.
Используйте регулярные выражения для удаления цифр (альтернативный метод)
В этом шаге мы будем использовать другое регулярное выражение для удаления цифр из строки.
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "House123sector4";
System.out.println("Original String: " + str);
str = str.replaceAll("[0-9]", "");
System.out.println("String with only Alphabets: " + str);
}
}
В коде выше мы использовали метод replaceAll(), чтобы заменить все цифры в строке str. Регулярное выражение [0-9] будет соответствовать всем цифрам, присутствующим в строке.
Компилируйте и запустите код
Сохраните внесенные изменения в файле RemoveNumericValues.java, откройте терминал, перейдите в каталог проекта и введите следующую команду для компиляции кода:
javac RemoveNumericValues.java
После успешной компиляции кода введите следующую команду для запуска кода:
java RemoveNumericValues
Результат работы кода будет отображаться в терминале.
Измените входную строку
Для тестирования кода на различных входных строках измените строку str на любое значение по своему выбору.
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "Hello%&$3World";
System.out.println("Original String: " + str);
str = str.replaceAll("[^A-Za-z]", "");
System.out.println("String with only Alphabets: " + str);
}
}
Протестируйте альтернативный метод
Измените предыдущую версию кода для тестирования альтернативного метода следующим образом:
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "Hello%&$3World";
System.out.println("Original String: " + str);
str = str.replaceAll("[0-9]", "");
System.out.println("String with only Alphabets: " + str);
}
}
Протестируйте второй метод
Измените предыдущую версию кода для тестирования второго метода следующим образом:
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "Hello%&$3World";
System.out.println("Original String: " + str);
str = str.replaceAll("\\d", "");
System.out.println("String with only Alphabets: " + str);
}
}
Резюме
В этом практическом занятии мы научились удалять числовые значения из строки на Java. Мы использовали метод replaceAll() вместе с разными регулярными выражениями для фильтрации строки и получения только букв. Мы также научились тестировать код с разными входными строками.



