내가 다음을 수행하는 데 도움이 필요 문자열로 만들려면 :스캐너 객체를 가지고 그것을
- 사용 입력을 수신 스캐너 클래스를
- 스캐너로부터 입력을 측정하고 그 문자열 을 (I이있어)
replaceAll
을 사용하여 사용자 입력에서 숫자 0-9를 제거하십시오.public static void main(String[] args) { Scanner firstname = new Scanner(System.in); System.out.println("Please enter your first name:"); String firstname1 = firstname.next(); firstname1.replaceAll("[^0-9]",""); System.out.println(firstname1);
업데이트 코드 :
아래 코드 내가 지금까지 가지고 있지만 그것은 단지 사용자의 입력을 돌려 숫자를 제거하지 않는 것입니다. 호버 크래프트에 감사드립니다.
import java.util.Scanner;
public class Assignment2_A {
public static void main(String[] args) {
Scanner firstname = new Scanner(System.in);
System.out.println("Please enter your first name:");
String firstname1 = firstname.next();
firstname1 = firstname1.replaceAll("[^A-Z]","");
System.out.println(firstname1);
'firstname1.replaceAll ("[^ 0-9]", "");'이것은 firstname1 문자열을 변경하지 않고 ** 변경된 문자열을 ** 반환하기 때문에 문제가 있습니다. 'firstname1 = firstname1.replaceAll ("[^ 0-9]", "");'이유는 * 문자열이 불변 *이기 때문입니다. 생성 된 String 객체는 변경할 수 없지만 String 변수가 참조하는 String 객체는 변경할 수 있지만 미묘하지만 중요한 차이점이 있습니다. –
호버 크래프트 뱀장어로 가득 감사합니다.나는 당신에게 아주 가까이서 감사하고있다. 내 코드를 다음과 같이 업데이트했으며 지금은 숫자 만 다시 가져옵니다. 알파 문자 (0-9가 아님) 만 검색하도록 어떻게 업데이트 할 수 있습니까? – user2558595