자바스크립트 정규식

정규 표현식(영어: 정규 표현식, 종종 코드에서 regex, regexp 또는 RE로 축약됨)은 단일 문자열을 사용하여 특정 구문 규칙을 따르는 일련의 문자열 검색 패턴을 설명하고 일치시킵니다.

텍스트 검색 및 텍스트 교체에 사용할 수 있는 검색 모드입니다.


정규 표현식이란 무엇인가요?

정규 표현식은 일련의 문자로 구성된 검색 패턴입니다.

텍스트에서 데이터를 검색할 때 검색 패턴을 사용하여 쿼리하려는 내용을 설명할 수 있습니다.

정규 표현식은 단순한 문자일 수도 있고 더 복잡한 패턴일 수도 있습니다.

정규식은 모든 텍스트 검색 및 텍스트 바꾸기 작업에 사용할 수 있습니다.

문법

/pattern/modifiers;

예:

var patt = /phpl/i

예제 분석:

/php/i는 정규 표현식입니다.

php는 패턴입니다(검색에 사용됨).

i는 수정자입니다(검색은 대소문자를 구분하지 않습니다).


문자열 메서드 사용

JavaScript에서 정규식은 일반적으로 두 가지 문자열 메서드, search() 및 바꾸기()에 사용됩니다.

search() 메서드는 문자열에서 지정된 하위 문자열을 검색하거나 정규 표현식과 일치하는 하위 문자열을 검색하고 하위 문자열의 시작 위치를 반환하는 데 사용됩니다.

replace() 메서드는 문자열의 일부 문자를 다른 문자로 바꾸거나 정규식과 일치하는 하위 문자열을 바꾸는 데 사용됩니다.


search() 메소드는 정규식을 사용합니다

대소문자를 구분하지 않고 "php.cn" 문자열을 검색하려면 정규식을 사용하세요.

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>PHP中文网(php.cn)</title>
</head>
<body>
<p>搜索字符串 "php.cn", 并显示匹配的起始位置:</p>
<button onclick="myFunction()">点我</button>
<p id="demo"></p>
<script>
    function myFunction() {
        var str = "Visit php.cn!";
        var n = str.search(/php.cn/i);
        document.getElementById("demo").innerHTML = n;
    }
</script>
</body>
</html>

프로그램을 실행하여 사용해 보세요.


search() 메서드는 문자열을 사용합니다.

검색 메서드는 문자열을 매개변수로 사용할 수 있습니다. . 문자열 매개변수는 정규 표현식으로 변환됩니다:

Example

문자열에서 "php.cn"의 하위 문자열을 검색합니다:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>PHP中文网(php.cn)</title>
</head>
<body>
<p>搜索字符串 "php.cn", 并显示匹配的起始位置:</p>
<button onclick="myFunction()">点我</button>
<p id="demo"></p>
<script>
    function myFunction() {
        var str = "Visit php.cn!";
        var n = str.search("php.cn");
        document.getElementById("demo").innerHTML = n;
    }
</script>
</body>
</html>

프로그램을 실행하여 사용해 보세요


replace() 메서드 정규식을 사용합니다 Expression

Example

정규식과 대소문자를 구분하지 않고 문자열의 Microsoft를 php.cn으로 바꿉니다.

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>PHP中文网(php.cn)</title>
</head>
<body>
<p>替换 "microsoft" 为 "php.cn" :</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.cn");
        document.getElementById("demo").innerHTML = txt;
    }
</script>
</body>
</html>

프로그램을 실행하여 사용해 보세요


replace() 메소드 문자열

replace() 메소드를 사용하면 문자열이 매개변수로 수신됩니다.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>PHP中文网(php.cn)</title>
</head>
<body>
<p>替换 "Microsoft" 为 "php.cn" :</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.cn");
    document.getElementById("demo").innerHTML = txt;
}
</script>
</body>
</html>

프로그램을 실행하여 사용해 보세요.


팁:

정규 표현식 매개변수를 위 메소드에서 대신 사용할 수 있습니다. 문자열 매개변수).
정규식은 검색 기능을 더욱 강력하게 만듭니다(예: 대/소문자를 구분하지 않음).


정규 표현식 수정자

수정자는 전역 검색에서 대소문자를 구분할 수 있습니다.

수정자 설명
i대소문자 구분- 무감각 일치.
g 전역 일치를 수행합니다(첫 번째 일치 항목을 찾은 후 중지하는 대신 모든 일치 항목 찾기).
m다중 줄 일치를 수행합니다.

정규 표현식 패턴

대괄호는 다양한 문자를 찾는 데 사용됩니다.

ExpressionDescription
[abc]대괄호 문자 사이에 있는 항목을 찾습니다.
[0-9]0부터 9까지의 숫자를 찾으세요.
(x|y)|로 구분된 옵션을 찾으세요.

메타 문자는 특별한 의미를 갖는 문자입니다.

메타 문자 Description
d숫자를 찾습니다.
s 공백 문자를 찾습니다.
b 단어 경계를 일치시킵니다.
uxxxx16진수 xxxx로 지정된 유니코드 문자를 찾으세요.

정량자:

Quantifier 설명
n+은 하나 이상의 n을 포함하는 모든 문자열과 일치합니다.
n*은 0개 이상의 n을 포함하는 모든 문자열과 일치합니다.
n?은 0개 또는 1개의 n을 포함하는 모든 문자열과 일치합니다.

RegExp 개체 사용

JavaScript에서 RegExp 개체는 사전 정의된 속성과 메서드가 있는 정규식 개체입니다.


test() 사용

test() 메서드는 정규식 메서드입니다.

test() 메서드는 문자열이 특정 패턴과 일치하는지 감지하는 데 사용됩니다. 문자열에 일치하는 텍스트가 포함되어 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.

다음 예는 문자열에서 문자 "e"를 검색하는 데 사용됩니다.

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>PHP中文网(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>

프로그램을 실행하여 시도해 보세요


위의 두 줄의 코드는 정규식 변수를 설정할 필요가 없습니다.

/e/ .test("인생에서 가장 좋은 것은 무료입니다!")


exec() 사용

exec() 메서드는 정규 표현식 메서드입니다. .

exec() 메서드는 문자열에서 정규식 일치 항목을 검색하는 데 사용됩니다.

이 함수는 일치하는 결과를 저장하는 배열을 반환합니다. 일치하는 항목이 없으면 반환 값은 null입니다.

다음 예는 문자열에서 문자 "e"를 검색하는 데 사용됩니다.

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>PHP中文网(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>

프로그램을 실행하여 사용해 보세요



지속적인 학습
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>PHP中文网(php.cn)</title> </head> <body> <p>搜索字符串 "php.cn", 并显示匹配的起始位置:</p> <button onclick="myFunction()">点我</button> <p id="demo"></p> <script> function myFunction() { var str = "Visit php.cn!"; var n = str.search(/php.cn/i); document.getElementById("demo").innerHTML = n; } </script> </body> </html>
  • 코스 추천
  • 코스웨어 다운로드
현재 코스웨어를 다운로드할 수 없습니다. 현재 직원들이 정리하고 있습니다. 앞으로도 본 강좌에 많은 관심 부탁드립니다~