Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript 정규식(RegExp)으로 문자열에서 단어가 아닌 문자 찾기

JavaScript 정규 표현식(RegExp)을 사용해 문자열에서 단어가 아닌 문자(non-word character), 즉 영문자(a-z, A-Z), 숫자(0-9), 밑줄(_)을 제외한 모든 문자를 찾으려면 다음 메타 문자를 사용하면 됩니다.

\W

\W[^A-Za-z0-9_]와 동일한 의미를 가지며, 공백, 특수문자, 기호처럼 단어를 구성하지 않는 모든 문자와 일치합니다.

예제

다음 코드를 실행하면 문자열에서 단어가 아닌 문자를 손쉽게 찾을 수 있습니다.

<html>
<head>
<title>JavaScript Regular Expression</title>
</head>

<body>
<script>
var myStr = "100% Responsive!";
var reg = /\W/g;
var match = myStr.match(reg);

document.write(match);
</script>
</body>
</html>

위 예제에서는 /\W/g 패턴을 사용했습니다. 마지막의 g(global) 플래그는 문자열 전체에서 일치하는 모든 문자를 찾도록 지정하는 역할을 합니다.

실행 결과로 "%", " ", "!"가 반환되는데, 이는 문자열 "100% Responsive!"에서 단어 문자에 해당하지 않는 문자들입니다. 이처럼 \W를 활용하면 입력값 검증이나 문자열 정제 작업에서 특수문자나 공백을 쉽게 걸러낼 수 있습니다.