자바스크립트 정규 표현식
정규 표현식(영어: 정규 표현식, 종종 코드에서 regex, regexp 또는 RE로 축약됨)은 단일 문자열을 사용하여 특정 구문 규칙을 따르는 일련의 문자열 검색 패턴을 설명하고 일치시킵니다.
검색 모드를 사용하여 텍스트 검색 및 텍스트 교체가 가능합니다.
정규식이란 무엇인가요?
정규 표현식은 일련의 문자로 구성된 검색 패턴입니다.
텍스트의 데이터를 검색할 때 검색 패턴을 사용하여 쿼리하려는 내용을 설명할 수 있습니다.
정규식은 간단한 문자일 수도 있고 더 복잡한 패턴일 수도 있습니다.
정규식은 모든 텍스트 검색 및 텍스트 바꾸기 작업에 사용할 수 있습니다.
문법
예:
분석 예:
/php/i는 정규식입니다.
php는 패턴입니다(검색에 사용됨).
i는 수정자입니다(검색은 대소문자를 구분하지 않습니다).
문자열 메소드 사용
JavaScript에서 정규식은 일반적으로 두 가지 문자열 메소드인 search() 및 replacement()와 함께 사용됩니다.
search() 메서드 는 문자열에서 지정된 하위 문자열을 검색하거나 정규 표현식과 일치하는 하위 문자열을 검색하고 하위 문자열의 시작 위치를 반환하는 데 사용됩니다.
replace() 메소드 는 문자열의 일부 문자를 다른 문자로 바꾸거나 정규식과 일치하는 하위 문자열을 바꾸는 데 사용됩니다.
search() 메소드는 정규 표현식을 사용합니다
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> </head> <body> <p>搜索字符串 "php", 并显示匹配的起始位置:</p> <button onclick="myFunction()">点我</button> <p id="demo"></p> <script> function myFunction() { var str = "Visit php!"; var n = str.search(/php/i); document.getElementById("demo").innerHTML = n; } </script> </body> </html>
인스턴스 실행»
온라인 인스턴스를 보려면 "인스턴스 실행" 버튼을 클릭하세요
search() 메서드는 문자열을 사용합니다
검색 메서드는 문자열을 매개 변수로 사용할 수 있습니다. 문자열 인수는 정규식으로 변환됩니다.
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> </head> <body> <p>搜索字符串 "php", 并显示匹配的起始位置:</p> <button onclick="myFunction()">点我</button> <p id="demo"></p> <script> function myFunction() { var str = "Visit php!"; var n = str.search("php"); document.getElementById("demo").innerHTML = n; } </script> </body> </html>
Run Instance»
"Run Instance" 버튼을 클릭하여 온라인 예제 보기
replace() 메서드는 정규 표현식을 사용합니다
인스턴스
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php</title> </head> <body> <p>替换 "microsoft" 为 php" :</p> <button onclick="myFunction()">点我</button> <p id="demo">请访问 Microsoft!</p> <script> function myFunction() { var str = document.getElementById("demo").innerHTML; var txt = str.replace(/microsoft/i,"php"); document.getElementById("demo").innerHTML = txt; } </script> </body> </html>
인스턴스 실행»
온라인 인스턴스를 보려면 "인스턴스 실행" 버튼을 클릭하세요
replace() 메소드 사용법 문자열
replace() 메소드는 문자열을 매개변수로 받습니다:
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> </head> <body> <p>替换 "Microsoft" 为 "php" :</p> <button onclick="myFunction()">点我</button> <p id="demo">请访问 Microsoft!</p> <script> function myFunction() { var str = document.getElementById("demo").innerHTML; var txt = str.replace("Microsoft","php"); document.getElementById("demo").innerHTML = txt; } </script> </body> </html>
인스턴스 실행 중»
온라인 인스턴스를 보려면 "인스턴스 실행" 버튼을 클릭하세요
눈치채셨나요?
위 방법에서는 정규식 매개변수를 사용할 수 있습니다(문자열 매개변수 대체). .
|
정규식 수정자
수정자 대소문자 가능 -전체 검색에서는 구분하지 않음:
修饰符 | 描述 |
---|---|
i | 执行对大小写不敏感的匹配。 |
g | 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 |
m | 执行多行匹配。 |
정규식 패턴
대괄호는 특정 범위 내에서 찾는 데 사용됩니다. 문자:
表达式 | 描述 |
---|---|
[abc] | 查找方括号之间的任何字符。 |
[0-9] | 查找任何从 0 至 9 的数字。 |
(x|y) | 查找任何以 | 分隔的选项。 |
메타문자는 특별한 의미를 지닌 문자입니다:
元字符 | 描述 |
---|---|
d | 查找数字。 |
s | 查找空白字符。 |
b | 匹配单词边界。 |
uxxxx | 查找以十六进制数 xxxx 规定的 Unicode 字符。 |
정량자:
量词 | 描述 |
---|---|
n+ | 匹配任何包含至少一个 n 的字符串。 |
n* | 匹配任何包含零个或多个 n 的字符串。 |
n? | 匹配任何包含零个或一个 n 的字符串。 |
RegExp 개체 사용
JavaScript에서 RegExp 개체는 사전 정의된 속성과 메서드가 있는 정규식 개체입니다.
test() 사용
test() 메서드는 정규식 메서드입니다.
test() 메서드는 문자열이 특정 패턴과 일치하는지 확인하는 데 사용됩니다. 문자열에 일치하는 텍스트가 포함되어 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
다음 예는 문자열에서 "e" 문자를 검색하는 데 사용됩니다.
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> </head> <body> <script> var patt1=new RegExp("e"); document.write(patt1.test("The best things in life are free")); </script> </body> </html>
실행 예 »
온라인 인스턴스를 보려면 "인스턴스 실행" 버튼을 클릭하세요
exec() 사용
exec() 메서드는 일반 표현방법.
exec() 메서드는 문자열에서 정규식 일치 항목을 검색하는 데 사용됩니다.
이 함수는 일치하는 결과를 저장하는 배열을 반환합니다. 일치하는 항목이 없으면 반환 값은 null입니다.
다음 예는 문자열에서 문자 "e"를 검색하는 데 사용됩니다.
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> </head> <body> <script> var patt1=new RegExp("e"); document.write(patt1.exec("The best things in life are free")); </script> </body> </html>
실행 예 »
온라인 예제를 보려면 "예제 실행" 버튼을 클릭하세요
RegExp 참조 매뉴얼 전체
RegExp 개체 참조 매뉴얼 전체를 보려면, JavaScript RegExp 참조 매뉴얼을 참조하세요.
이 참조 매뉴얼에는 RegExp 개체의 모든 메서드와 속성이 포함되어 있습니다.