正規表現
正規表現とは?
正規表現は、文字列内の特定の文字を検索するツールです.
=>特定の規則を持つ文字列からなる式
正規表現の使用
1.ソリッドパターン
正規表現規則を上書きするには、スラッシュ(/)を使用します.
スラッシュに入る文字列検索する文字列.let pattern = /c/;
2.コンストラクション関数呼び出しモード
RegExpオブジェクトのコンストラクション関数を呼び出して使用let pattern = new RegExp('c');
正規表現の組み込み方法
1.RegExpオブジェクトのメソッド
1. exec()
execはexecutionの略で、必要な情報を抽出するために使用されます.
検索するターゲットに検索する文字列の情報が含まれている場合は配列に戻り、検索する文字列がない場合はnull
に戻ります.let pattern = /c/;
pattern.exec('coding') // ['c']
2. test()
検索する文字列をbooleanに戻して、ターゲットにあるかどうかを決定します.let pattern = /c/;
pattern.test('coding') // true
2.Stringオブジェクトの方法
1. match()
RegExp.exec()機能と同様に、正規表現をパラメータとして受け入れ、所与の文字列に一致する配列を返します.一致しない場合は、null
を返します.let pattern = /c/;
let str = 'coding';
str.match(pattern); // ['c']
2. replace()
検索するターゲットを文字列で検索し、置換する文字列に変更し、変更した値を返します.let pattern = /c/;
let str = 'coding';
str.replace(pattern, 'C'); // 'Coding'
3. split()
指定したパラメータを区切り記号として、文字列を部分文字列に分割し、結果を配列に返します.
4. search()
文字列が最初の一致部分文字列の位置(正規表現をパラメータとして)を返す/一致しない場合は、-1
を返します."JavaScript".search(/script/); // -1 대소문자를 구분
"JavaScript".search(/Script/); // 4
"coding".search(/odi/); // 1
flag
正規表現ではタグを設定できます.タグは追加の検索オプションの役割です.
ロゴはそれぞれまたは一緒に使用できますが、順序は区別されません.
1. i
iを加えて大文字と小文字を区別しない.let withi = /c/i;
let withouti = /c/;
"Coding".match(withi); // ['C']
"Coding".match(withouti); // null
2. g
globalの略語、gを加えて、すべての検索結果を返します.let withg = /c/g;
let withoutg = /c/;
"coolcoding".match(withg); // ['c', 'c']
"coolcoding".match(withoutg); // ['c'] g 가 없으면 첫 번째 검색 결과만 반환
3. m
mを追加して複数行を検索let str = `1st : cool
2nd : cod
3rd : ing`;
str.match(/c/gm)
// 3개의 행을 검색하여 모든 c 를 반환
// ['c', 'c']
str.match(/c/m)
// m은 다중행을 검색하게 해 주지만, g 를 빼고 검색하면 검색 대상을 찾는 순간 검색을 멈추기 때문에
// 첫 행의 ['c'] 만 리턴
せいそくアレイ
正規モード説明^行(行)の先頭からマッチング/^abc/$行(行)の末尾までマッチング/xyz$/.(特殊記号、スペースを含む)任意の文字a(bar)baまたはbを一致させ、まずインデックスの小さい*を返し、連続して0回以上繰り返される文字をできるだけ多く一致させる.と同じ*?連続して0回以上繰り返した文字とできるだけ少なく一致します.同じ+連続して1回以上繰り返した文字とできるだけ多く一致します.と同じ+?1回以上繰り返した文字とできるだけ少なく一致します.{0}と同じ3つの数字の連続一致{3,}3つ以上の連続一致{3,5}3つ以上の連続一致()キャプチャするグループ[A-z]aからzまでの文字領域マッチング(英語小文字)[A-Z]AからZまでの文字領域マッチング(英語大文字)[0-9]0から9までの文字領域マッチング(数字)(反スラッシュ)escape文字.特殊記号の前にを付けると、正規モードではなく、記号自体が認識するd数字が検索されます./[0-9]/とは異なる文字Dを検索します./[^0-9]/と同じw英語の大文字と小文字、数字、および(下線)を検索します.[A-Za-z 0-9]/と同じW非英語大文字小文字、数字、および(下線)文字を検索します.[^A-Za-z 0-9]/と同じ[^][]の文字列の前に^を書くと、[]にない文字が検索されます
文法の整理
Groups and ranges
Chrracterの意味欄(or演算子)または()グループ[]文字セット、括弧内の任意の文字[^]否定文字セット、括弧内の任意の非文(?:)で検索しますが、覚えていません.
Quantifiers
Chracterの意味は?なしまたは有(zero or one)*なしまたは有または多(zeroまたはmore)+1つまたは複数(oneまたはmore){n}n回反復{min,}最小{min,max}最小,最大
Boundary-type
Chracter意味b単語境界b単語境界^文の開始$文の終了ではありません
Character classes
漢字の意味特殊文字の文字ではありません.改行を含まない文字はどれですかddigt数字Ddigit数字word文字ではありませんwword文字ではありませんsspaceスペーススペースではありません
正規表現による検証
Eメール認証
let regExp = /^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$/i;
携帯番号の確認
let regExp = /^01([0|1|6|7|8|9]?)-?([0-9]{3,4})-?([0-9]{4})$/;
Reference
この問題について(正規表現), 我々は、より多くの情報をここで見つけました
https://velog.io/@hoony0802/정규-표현식
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
1.ソリッドパターン
正規表現規則を上書きするには、スラッシュ(/)を使用します.
スラッシュに入る文字列検索する文字列.
let pattern = /c/;
2.コンストラクション関数呼び出しモード
RegExpオブジェクトのコンストラクション関数を呼び出して使用
let pattern = new RegExp('c');
正規表現の組み込み方法
1.RegExpオブジェクトのメソッド
1. exec()
execはexecutionの略で、必要な情報を抽出するために使用されます.
検索するターゲットに検索する文字列の情報が含まれている場合は配列に戻り、検索する文字列がない場合はnull
に戻ります.let pattern = /c/;
pattern.exec('coding') // ['c']
2. test()
検索する文字列をbooleanに戻して、ターゲットにあるかどうかを決定します.let pattern = /c/;
pattern.test('coding') // true
2.Stringオブジェクトの方法
1. match()
RegExp.exec()機能と同様に、正規表現をパラメータとして受け入れ、所与の文字列に一致する配列を返します.一致しない場合は、null
を返します.let pattern = /c/;
let str = 'coding';
str.match(pattern); // ['c']
2. replace()
検索するターゲットを文字列で検索し、置換する文字列に変更し、変更した値を返します.let pattern = /c/;
let str = 'coding';
str.replace(pattern, 'C'); // 'Coding'
3. split()
指定したパラメータを区切り記号として、文字列を部分文字列に分割し、結果を配列に返します.
4. search()
文字列が最初の一致部分文字列の位置(正規表現をパラメータとして)を返す/一致しない場合は、-1
を返します."JavaScript".search(/script/); // -1 대소문자를 구분
"JavaScript".search(/Script/); // 4
"coding".search(/odi/); // 1
flag
正規表現ではタグを設定できます.タグは追加の検索オプションの役割です.
ロゴはそれぞれまたは一緒に使用できますが、順序は区別されません.
1. i
iを加えて大文字と小文字を区別しない.let withi = /c/i;
let withouti = /c/;
"Coding".match(withi); // ['C']
"Coding".match(withouti); // null
2. g
globalの略語、gを加えて、すべての検索結果を返します.let withg = /c/g;
let withoutg = /c/;
"coolcoding".match(withg); // ['c', 'c']
"coolcoding".match(withoutg); // ['c'] g 가 없으면 첫 번째 검색 결과만 반환
3. m
mを追加して複数行を検索let str = `1st : cool
2nd : cod
3rd : ing`;
str.match(/c/gm)
// 3개의 행을 검색하여 모든 c 를 반환
// ['c', 'c']
str.match(/c/m)
// m은 다중행을 검색하게 해 주지만, g 를 빼고 검색하면 검색 대상을 찾는 순간 검색을 멈추기 때문에
// 첫 행의 ['c'] 만 리턴
せいそくアレイ
正規モード説明^行(行)の先頭からマッチング/^abc/$行(行)の末尾までマッチング/xyz$/.(特殊記号、スペースを含む)任意の文字a(bar)baまたはbを一致させ、まずインデックスの小さい*を返し、連続して0回以上繰り返される文字をできるだけ多く一致させる.と同じ*?連続して0回以上繰り返した文字とできるだけ少なく一致します.同じ+連続して1回以上繰り返した文字とできるだけ多く一致します.と同じ+?1回以上繰り返した文字とできるだけ少なく一致します.{0}と同じ3つの数字の連続一致{3,}3つ以上の連続一致{3,5}3つ以上の連続一致()キャプチャするグループ[A-z]aからzまでの文字領域マッチング(英語小文字)[A-Z]AからZまでの文字領域マッチング(英語大文字)[0-9]0から9までの文字領域マッチング(数字)(反スラッシュ)escape文字.特殊記号の前にを付けると、正規モードではなく、記号自体が認識するd数字が検索されます./[0-9]/とは異なる文字Dを検索します./[^0-9]/と同じw英語の大文字と小文字、数字、および(下線)を検索します.[A-Za-z 0-9]/と同じW非英語大文字小文字、数字、および(下線)文字を検索します.[^A-Za-z 0-9]/と同じ[^][]の文字列の前に^を書くと、[]にない文字が検索されます
文法の整理
Groups and ranges
Chrracterの意味欄(or演算子)または()グループ[]文字セット、括弧内の任意の文字[^]否定文字セット、括弧内の任意の非文(?:)で検索しますが、覚えていません.
Quantifiers
Chracterの意味は?なしまたは有(zero or one)*なしまたは有または多(zeroまたはmore)+1つまたは複数(oneまたはmore){n}n回反復{min,}最小{min,max}最小,最大
Boundary-type
Chracter意味b単語境界b単語境界^文の開始$文の終了ではありません
Character classes
漢字の意味特殊文字の文字ではありません.改行を含まない文字はどれですかddigt数字Ddigit数字word文字ではありませんwword文字ではありませんsspaceスペーススペースではありません
正規表現による検証
Eメール認証
let regExp = /^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$/i;
携帯番号の確認
let regExp = /^01([0|1|6|7|8|9]?)-?([0-9]{3,4})-?([0-9]{4})$/;
Reference
この問題について(正規表現), 我々は、より多くの情報をここで見つけました
https://velog.io/@hoony0802/정규-표현식
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
let pattern = /c/;
pattern.exec('coding') // ['c']
let pattern = /c/;
pattern.test('coding') // true
let pattern = /c/;
let str = 'coding';
str.match(pattern); // ['c']
let pattern = /c/;
let str = 'coding';
str.replace(pattern, 'C'); // 'Coding'
"JavaScript".search(/script/); // -1 대소문자를 구분
"JavaScript".search(/Script/); // 4
"coding".search(/odi/); // 1
正規表現ではタグを設定できます.タグは追加の検索オプションの役割です.
ロゴはそれぞれまたは一緒に使用できますが、順序は区別されません.
1. i
iを加えて大文字と小文字を区別しない.
let withi = /c/i;
let withouti = /c/;
"Coding".match(withi); // ['C']
"Coding".match(withouti); // null
2. g
globalの略語、gを加えて、すべての検索結果を返します.
let withg = /c/g;
let withoutg = /c/;
"coolcoding".match(withg); // ['c', 'c']
"coolcoding".match(withoutg); // ['c'] g 가 없으면 첫 번째 검색 결과만 반환
3. m
mを追加して複数行を検索
let str = `1st : cool
2nd : cod
3rd : ing`;
str.match(/c/gm)
// 3개의 행을 검색하여 모든 c 를 반환
// ['c', 'c']
str.match(/c/m)
// m은 다중행을 검색하게 해 주지만, g 를 빼고 검색하면 검색 대상을 찾는 순간 검색을 멈추기 때문에
// 첫 행의 ['c'] 만 리턴
せいそくアレイ
正規モード説明^行(行)の先頭からマッチング/^abc/$行(行)の末尾までマッチング/xyz$/.(特殊記号、スペースを含む)任意の文字a(bar)baまたはbを一致させ、まずインデックスの小さい*を返し、連続して0回以上繰り返される文字をできるだけ多く一致させる.と同じ*?連続して0回以上繰り返した文字とできるだけ少なく一致します.同じ+連続して1回以上繰り返した文字とできるだけ多く一致します.と同じ+?1回以上繰り返した文字とできるだけ少なく一致します.{0}と同じ3つの数字の連続一致{3,}3つ以上の連続一致{3,5}3つ以上の連続一致()キャプチャするグループ[A-z]aからzまでの文字領域マッチング(英語小文字)[A-Z]AからZまでの文字領域マッチング(英語大文字)[0-9]0から9までの文字領域マッチング(数字)(反スラッシュ)escape文字.特殊記号の前にを付けると、正規モードではなく、記号自体が認識するd数字が検索されます./[0-9]/とは異なる文字Dを検索します./[^0-9]/と同じw英語の大文字と小文字、数字、および(下線)を検索します.[A-Za-z 0-9]/と同じW非英語大文字小文字、数字、および(下線)文字を検索します.[^A-Za-z 0-9]/と同じ[^][]の文字列の前に^を書くと、[]にない文字が検索されます
文法の整理
Groups and ranges
Chrracterの意味欄(or演算子)または()グループ[]文字セット、括弧内の任意の文字[^]否定文字セット、括弧内の任意の非文(?:)で検索しますが、覚えていません.
Quantifiers
Chracterの意味は?なしまたは有(zero or one)*なしまたは有または多(zeroまたはmore)+1つまたは複数(oneまたはmore){n}n回反復{min,}最小{min,max}最小,最大
Boundary-type
Chracter意味b単語境界b単語境界^文の開始$文の終了ではありません
Character classes
漢字の意味特殊文字の文字ではありません.改行を含まない文字はどれですかddigt数字Ddigit数字word文字ではありませんwword文字ではありませんsspaceスペーススペースではありません
正規表現による検証
Eメール認証
let regExp = /^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$/i;
携帯番号の確認
let regExp = /^01([0|1|6|7|8|9]?)-?([0-9]{3,4})-?([0-9]{4})$/;
Reference
この問題について(正規表現), 我々は、より多くの情報をここで見つけました
https://velog.io/@hoony0802/정규-표현식
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
Groups and ranges
Chrracterの意味欄(or演算子)または()グループ[]文字セット、括弧内の任意の文字[^]否定文字セット、括弧内の任意の非文(?:)で検索しますが、覚えていません.
Quantifiers
Chracterの意味は?なしまたは有(zero or one)*なしまたは有または多(zeroまたはmore)+1つまたは複数(oneまたはmore){n}n回反復{min,}最小{min,max}最小,最大
Boundary-type
Chracter意味b単語境界b単語境界^文の開始$文の終了ではありません
Character classes
漢字の意味特殊文字の文字ではありません.改行を含まない文字はどれですかddigt数字Ddigit数字word文字ではありませんwword文字ではありませんsspaceスペーススペースではありません
正規表現による検証
Eメール認証
let regExp = /^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$/i;
携帯番号の確認
let regExp = /^01([0|1|6|7|8|9]?)-?([0-9]{3,4})-?([0-9]{4})$/;
Reference
この問題について(正規表現), 我々は、より多くの情報をここで見つけました
https://velog.io/@hoony0802/정규-표현식
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
let regExp = /^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$/i;
let regExp = /^01([0|1|6|7|8|9]?)-?([0-9]{3,4})-?([0-9]{4})$/;
Reference
この問題について(正規表現), 我々は、より多くの情報をここで見つけました https://velog.io/@hoony0802/정규-표현식テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol