JavaScript  정규 표현 식 메모 장 인 스 턴 스 코드

8497 단어 JS정칙메모
정규 표현 식 이나'regex'는 문자열 과 일치 하 는 각 부분 에 사 용 됩 니 다.다음은 제 가 정규 표현 식 을 만 드 는 메모 입 니 다.
정합 정규
.test()방법 사용 하기

let testString = "My test string";
let testRegex = /string/;
testRegex.test(testString);
여러 패턴 일치
조작 기호 사용|const regex = /yes|no|maybe/; 대소 문자 무시
대소 문자 무시 i 플래그 사용 하기

const caseInsensitiveRegex = /ignore case/i;
const testString = 'We use the i flag to iGnOrE CasE';
caseInsensitiveRegex.test(testString); // true
변수의 첫 번 째 일치 항목 추출
.match()방법 사용 하기

const match = "Hello World!".match(/hello/i); // "Hello"
배열 의 모든 일치 항목 추출
g 로고 사용 하기

const testString = "Repeat repeat rePeAT";
const regexWithAllMatches = /Repeat/gi;
testString.match(regexWithAllMatches); // ["Repeat", "repeat", "rePeAT"] 
임 의 문자 일치
마스크 를 사용 합 니 다.모든 문자 의 자리 표시 자 입 니 다.

// To match "cat", "BAT", "fAT", "mat"
const regexWithWildcard = /.at/gi;
const testString = "cat BAT cupcake fAT mat dog";
const allMatchingWords = testString.match(regexWithWildcard); // ["cat", "BAT", "fAT", "mat"] 
여러 가능성 으로 단일 문자 일치
  • 문자 류 를 사용 하면 일치 하 는 문 자 를 정의 할 수 있 습 니 다
  • 4.567917.그것들 을 괄호 안에 넣 어 라[]
    
    //   "cat" "fat" and "mat"      "bat"
    const regexWithCharClass = /[cfm]at/g;
    const testString = "cat fat bat mat";
    const allMatchingWords = testString.match(regexWithCharClass); // ["cat", "fat", "mat"] 
    알파벳 의 알파벳 과 일치 합 니 다.
    문자 집합 범위 사용 하기[a-z]
    
    const regexWidthCharRange = /[a-e]at/;
    const regexWithCharRange = /[a-e]at/;
    const catString = "cat";
    const batString = "bat";
    const fatString = "fat";
    regexWithCharRange.test(catString); // true
    regexWithCharRange.test(batString); // true
    regexWithCharRange.test(fatString); // false
    특정 숫자 와 알파벳 일치
    너 는 숫자 와 일치 하 는 하이픈 도 사용 할 수 있다.
    
    const regexWithLetterAndNumberRange = /[a-z0-9]/ig;
    const testString = "Emma19382";
    testString.match(regexWithLetterAndNumberRange) // true
    단일 알 수 없 는 문자 일치
    가지 고 싶 지 않 은 문자 와 일치 하려 면 부정 문자 집합 을 사용 하 십시오^
    
    const allCharsNotVowels = /[^aeiou]/gi;
    const allCharsNotVowelsOrNumbers = /[^aeiou0-9]/gi; 
    한 줄 에 한 번 또는 여러 번 나타 나 는 문자 와 일치 합 니 다.
    사용+표식
    
    const oneOrMoreAsRegex = /a+/gi;
    const oneOrMoreSsRegex = /s+/gi;
    const cityInFlorida = "Tallahassee";
    cityInFlorida.match(oneOrMoreAsRegex); // ['a', 'a', 'a'];
    cityInFlorida.match(oneOrMoreSsRegex); // ['ss']; 
    0 회 또는 여러 번 연속 으로 나타 나 는 문자 와 일치 합 니 다.
    별표 사용*
    
    const zeroOrMoreOsRegex = /hi*/gi;
    const normalHi = "hi";
    const happyHi = "hiiiiii";
    const twoHis = "hiihii";
    const bye = "bye";
    normalHi.match(zeroOrMoreOsRegex); // ["hi"]
    happyHi.match(zeroOrMoreOsRegex); // ["hiiiiii"]
    twoHis.match(zeroOrMoreOsRegex); // ["hii", "hii"]
    bye.match(zeroOrMoreOsRegex); // null
    불활성 일치
  • 문자열 에서 주어진 요구 와 일치 하 는 최소 부분
  • 기본 적 인 상황 에서 정규 표현 식 은 탐욕 적(주어진 요 구 를 만족 시 키 는 문자열 의 가장 긴 부분 과 일치)
  • 4.567917.사용?탐욕 방지 모드(타성 일치)
    
     const testString = "catastrophe";
     const greedyRexex = /c[a-z]*t/gi;
     const lazyRegex = /c[a-z]*?t/gi;
     testString.match(greedyRexex); // ["catast"]
     testString.match(lazyRegex); // ["cat"] 
    시작 문자열 패턴 일치
    문자열 의 시작 문자 가 일치 하 는 지 테스트 하려 면 삽입 기 호 를 사용 하 십시오^.단,시작 을 확대 하려 면 문자 집중 에 두 지 마 십시오.
    
    const emmaAtFrontOfString = "Emma likes cats a lot.";
    const emmaNotAtFrontOfString = "The cats Emma likes are fluffy.";
    const startingStringRegex = /^Emma/;
    startingStringRegex.test(emmaAtFrontOfString); // true
    startingStringRegex.test(emmaNotAtFrontOfString); // false 
    일치 끝 문자열 모드
    문자열 이 정 해진 문자 로 끝 나 는 지$로 판단 합 니 다.
    
    const emmaAtBackOfString = "The cats do not like Emma";
    const emmaNotAtBackOfString = "Emma loves the cats";
    const startingStringRegex = /Emma$/;
    startingStringRegex.test(emmaAtBackOfString); // true
    startingStringRegex.test(emmaNotAtBackOfString); // false 
    모든 알파벳 과 숫자 일치
    사용\\워드 약자
    
    const longHand = /[A-Za-z0-9_]+/;
    const shortHand = /\w+/;
    const numbers = "42";
    const myFavoriteColor = "magenta";
    longHand.test(numbers); // true
    shortHand.test(numbers); // true
    longHand.test(myFavoriteColor); // true
    shortHand.test(myFavoriteColor); // true
    알파벳 과 숫자 를 제외 하고 다른 것 은 모두 일치 해 야 한다.
    w 의 반 의 를 W 로 표시 하 다
    
    const noAlphaNumericCharRegex = /\W/gi;
    const weirdCharacters = "!_$!!";
    const alphaNumericCharacters = "ab283AD";
    noAlphaNumericCharRegex.test(weirdCharacters); // true
    noAlphaNumericCharRegex.test(alphaNumericCharacters); // false
    모든 숫자 일치
    문자 집합[0-9]을 사용 하거나 약자\d 를 사용 할 수 있 습 니 다.
    
    const digitsRegex = /\d/g;
    const stringWithDigits = "My cat eats $20.00 worth of food a week.";
    stringWithDigits.match(digitsRegex); // ["2", "0", "0", "0"]
    모든 비 숫자 일치
    d 의 반 의 를 D 로 표시 하 다
    
    const nonDigitsRegex = /\D/g;
    const stringWithLetters = "101 degrees";
    stringWithLetters.match(nonDigitsRegex); // [" ", "d", "e", "g", "r", "e", "e", "s"]
    일치 하 는 공백
    \s 를 사용 하여 스페이스 바 와 리 턴 부 호 를 일치 시 킵 니 다.
    
    const sentenceWithWhitespace = "I like cats!"
    var spaceRegex = /\s/g;
    whiteSpace.match(sentenceWithWhitespace); // [" ", " "]
    일치 하지 않 는 공백
    S 로\s 의 반 의 를 표시 하 다
    
    const sentenceWithWhitespace = "C a t"
    const nonWhiteSpaceRegex = /\S/g;
    sentenceWithWhitespace.match(nonWhiteSpaceRegex); // ["C", "a", "t"]
    일치 하 는 문자 수
    {하계,상계}을 사용 하여 한 줄 의 특정 문자 수 를 지정 할 수 있 습 니 다.
    
    const regularHi = "hi";
    const mediocreHi = "hiii";
    const superExcitedHey = "heeeeyyyyy!!!";
    const excitedRegex = /hi{1,4}/;
    excitedRegex.test(regularHi); // true
    excitedRegex.test(mediocreHi); // true
    excitedRegex.test(superExcitedHey); //false
    최소 개수 와 일치 하 는 문자 수
    {하계,}을 사용 하여 최소 수량의 문자 요 구 를 정의 합 니 다.아래 예제 에 서 는 알파벳 i 가 최소 2 번 나타 나 야 한 다 는 것 을 표시 합 니 다.
    
    const regularHi = "hi";
    const mediocreHi = "hiii";
    const superExcitedHey = "heeeeyyyyy!!!";
    const excitedRegex = /hi{2,}/;
    excitedRegex.test(regularHi); // false
    excitedRegex.test(mediocreHi); // true
    excitedRegex.test(superExcitedHey); //false
    정확 한 문자 수 일치
    사용{requiredCount}문자 가 요구 하 는 정확 한 수량 을 지정 합 니 다.
    
    const regularHi = "hi";
    const bestHi = "hii";
    const mediocreHi = "hiii";
    const excitedRegex = /hi{2}/;
    excitedRegex.test(regularHi); // false
    excitedRegex.test(bestHi); // true
    excitedRegex.test(mediocreHi); //false
    0 회 혹은 1 회 일치
    사용 하 다문자 0 회 또는 1 회 일치
    
    const britishSpelling = "colour";
    const americanSpelling = "Color";
    const languageRegex = /colou?r/i;
    languageRegex.test(britishSpelling); // true
    languageRegex.test(americanSpelling); // true
    코드 배치 후 존재 할 수 있 는 BUG 는 실시 간 으로 알 수 없습니다.나중에 이러한 BUG 를 해결 하기 위해 많은 시간 을 들 여 log 디 버 깅 을 했 습 니 다.여기 서 좋 은 BUG 모니터링 도 구 를 추천 합 니 다Fundebug
    총결산
    위 에서 말 한 것 은 소 편 이 여러분 에 게 소개 한 자 바스 크 립 트 입 니 다.  정규 표현 식 메모 인 스 턴 스 코드 입 니 다.도움 이 되 셨 으 면 좋 겠 습 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
    만약 당신 이 본문 이 당신 에 게 도움 이 된다 고 생각한다 면,전 재 를 환영 합 니 다.번 거 로 우 시 겠 지만 출처 를 밝 혀 주 십시오.감사합니다!

    좋은 웹페이지 즐겨찾기