본문 바로가기

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

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


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

 

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

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

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

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

 

- \n : Enter, ^ : 반전

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

 

[ 다른 정규식 응용 ]

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

제주삼다수, 2L,... 오뚜기 진라면 매운... 상하목장 유기농 흰... 남양 프렌치카페 카... 고려인삼유통 홍삼 ... 종근당건강 오메가3... 요이치 카링 유무선...