컴퓨터/언어,프로그래밍

Scanf()로 공백도(정규식) 입력 받자!

스노우볼^^ 2009. 6. 10. 21:30

[ 문자열 입력 정규식(Regular Expression) ]

 

Scanf()를 사용하면 공백이 입력이 안된다..

getch()를 사용하는 방법도 있지만 Scanf()를 사용하여 공백까지 입력하는 방법이 없을 까?

하여 네이버에게 물어보니 쉽게 찾을 수 있었다 ^^

 scanf("%[^\n]",&str);

 

- \n : Enter, ^ : 반전

- "엔터 입력전까지 문자를 str변수에 넣어라"

 

[ 다른 정규식 응용 ]

"%[abc]"  : abc인 문자만 받고 다른 문자가 입력되면 그 문자들은 입력이 안됨.
"%[^123]" : 123이라는 글자가 입력되기 전까지만 입력 받아라
"%[A-Z]"  : A-Z까지만 입력 받고 다른 문자가 오면 그 뒤 문자들은 입력이 안됨.
"%[0-9A-Za-z]" : 대소문자랑 숫자 외에 다른 문자가 입력되면 그 뒤 문자들은 입력이 안됨.