Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Java try-catch
- 자바 String클래스
- Java thorw
- java super( )
- 자바 예제
- Express
- database
- db
- 오라클
- dbeaver
- 자바 추상메서드
- 자바 내부 클래스
- nodejs
- Java 추상 메서드
- Java객체배열
- Java다운캐스팅
- Java추상클래스
- Java업캐스팅
- 자바 제어문
- oracle
- Java문자열 클래스
- 자바 Wrapper클래스
- 자바 Random클래스
- DBMS
- 자바 스트링클래스
- 자바 문자열 클래스
- 코딩
- 데이터베이스
- Java 내부 클래스
- 자바 try-catch
Archives
- Today
- Total
코딩이란 무엇일까
50일차[JavaScript](1)-정규식 본문
정규표현식이란?(Refular Expression :Regex)
정규식은 문자열에서 특정 내용을 찾거나 대체 또는 발췌하는 데 사용된다.
예를 들어 회원가입을 할 때 아이디, 비밀번호에 입력하라고 했을 때
올바르지 않은 값을 입력하면 정규표현식에 의해 필터링되어
다시 입력하라는 경고창이 뜨는 것을 볼 수 있다.
이아 같이 반복문, 조건문을 사용해야 할 복잡한 코드를 정규표현식을 이용하면
매우 간단하게 표현할 수 있다.
정규표현식의 단점으로는 주석,공백을 허용하지 않고 여러 가지 기호를 혼합하여 사용하기 때문에 가독성이 진짜 떨어진다.
정규표현식을 공부하면서 만든사람이 정말 궁금하다
정규식 메서드
정규식에서 사용되는 메서드이다.
메서드 의미
메서드 | 의미 |
(”문자열”).match(/정규표현식/플래그) | “문자열”에서 “정규표현식”에 매칭되는 항목들을 배열로 반한 |
(”문자열”).replace(/정규표현식/,”대체문자열”) | “정규표현식”에 매칭되는 항목을 “대체문자열”로 변환 |
(”문자열”).split(정규표현식) | “문자열”을 “정규표현식”에 매칭되는 항목으로 쪼개어 배열로 반환 |
(정규표현식).test(”문자열”) | “문자열”이 “정규표현식”과 매칭되면 true,아니면 false반한 |
(정규표현식).exec(”문자열) | match 메서드아 유사하지만 첫 번째 매칭 결과만 반환한다. |
정규표현식 매칭 패턴(문자, 숫자, 기호 등)
패턴 의미
패턴 | 의미 |
a-zA-z | 영어 알파벳(범위 지정) |
ㄱ-ㅎ 가-힣 | 한글 문자(범위 지정) |
0-9 | 숫자(범위지정) |
. | 모둔 문자열 단, 줄바꿈 불가능 |
\d | 숫자 |
\D | 숫자가 아닌 것 |
\w | 밑줄 문자를 포함한 영숫자 문자에 대응 [a-zA-z_]와 동일 |
\W | \w가 아닌 것 |
\s | space공백 |
\S | space공백이 아닌 것 |
\특수기호 | ~!@#$%^&등등.. |
정규식 검색 기준 패턴
패턴 의미
패턴 | 의미 |
| | OR |
[] | 괄호안의 문자들 중 하나 |
[^문자] | 괄호 안의 문자를 제외한 것 |
^문자열 | 특정 문자열로 시작(시작점) |
문자열$ | 특정 문자열 끝남(종착점) |
정규식 개수 반복 패턴
특정 패턴이 몇 번 반복되는지도 필터링 가능
패턴 의미
패턴 | 의미 |
? | 없거나 or 최대 한개만 |
* | 없거나 or 있거나(여러개) |
+ | 최소 한개 or 여러개 |
*? | 없거나 ,있거나 ad 없거나, 최대 한개: 없음 |
+? | 최소 한개, 있거나 and 없거나, 최대 한개: 한개 |
{n} | n개 |
{Min,} | 최소 Min개 이상 |
{Min,Max} | 최소 Min개 이상, 최대 Max개 이하 |
정규표현식 플래그
플래그 의미
패턴 | 의미 |
g | Global:모든 문자 검색(안 쓰면 매칭되는 첫 문자만 검색된다ㅖ |
i | ignore Case: 대소문자 구분 안함 |
m | Multi Line : 여러 행의 문자열에 대해 검색 |
정규표현식 예시
[전화번호]
const telepone =
"dkdasdadasasdas안녕녕 <http://abcdefg.com> <http://naver.com> 010-1313-1313";
console.log(telepone.match(/\\d{2,3}-\\d{3,4}-\\d{4}/g)
//[ '010-1313-1313' ]
[한글 찾기]
const text = "안녕녕 013213 abdadw *%!@#!!#!@#나는 한글 나오면 안돼";
console.log(text.match(/[^a-zA-z0-9\\!@#$%^&*()-_=+`~]/g));
/*결과[
'안', '녕', '녕', ' ',
' ', ' ', '나', '는',
' ', '한', '글', ' ',
'나', '오', '면', ' ',
'안', '돼'
]*/
'국비지원수업' 카테고리의 다른 글
54일차[JSP/Servlet](1)-JSP와 서블릿 (0) | 2023.01.09 |
---|---|
50일차[JavaScript](2)-Date객체와 날짜 (0) | 2023.01.03 |
49일차[JavaScript] (1)-form태그 요소 js로 가져오기 (0) | 2023.01.02 |
46일차[JavaScript]배열 (0) | 2022.12.28 |
45일차[JavaScript](2)-JavaScriptDocument객체 (2) | 2022.12.27 |
Comments