テキストからデータを解析および抽出するか、テキストを特定のパターンに検証することは、プログラミングにおける重要な要件です。 正規表現を使用して文字のパターンを記述します。この JavaScript正規表現 この記事では、式を使用するさまざまな方法を次の順序でリストします。
正規表現とは何ですか?
に 正規表現 検索パターンを構成する文字のシーケンスです。テキスト内のデータを検索する場合、この検索パターンを使用して、探しているものを説明できます。
正規表現は 単一の文字 またはより複雑なパターン。あらゆるタイプのテキスト検索およびテキスト置換操作に使用できます。正規表現パターンは、/ abc /などの単純な文字、または次のような単純な文字と特殊文字の組み合わせで構成されます。 / ab * c / または /example(d+).d*/。
JavaScript正規表現
に 、正規表現は、文字のパターンを記述するオブジェクトです。ザ・ JavaScript RegExp クラスは正規表現を表し、StringとRegExpの両方がメソッドを定義します。正規表現を使用して実行します パターンマッチング そして 検索と置換 テキストの機能。
構文:
正規表現は、 正規表現() コンストラクター:
var pattern = new RegExp(pattern、attributes)
または単に
var pattern = / pattern / attributes
ここに、
- パターン– 正規表現または別の正規表現のパターンを指定する文字列。
- 属性– グローバル、大文字と小文字を区別しない、複数行の一致を指定する属性を含むオプションの文字列。
JavaScript正規表現を使用するさまざまな方法があります。それでは、先に進んで、さまざまな表現を見てみましょう。
修飾子
修飾子は実行に使用されます 大文字小文字を区別しません そして グローバル 検索します。
編集 | 説明 |
g | グローバルマッチを実行します |
私 | これにより、大文字と小文字を区別しないマッチングが実行されます |
m | マルチラインマッチングを実行します |
例を見て、これらの修飾子がJavaScriptでどのように使用されるかを見てみましょう。
g 編集:
let str = 'これは例です' let pattern = / is / g
出力:
is、is
私は変更します:
let str = 'Welcome to Edureka' let pattern = / edureka / i
出力:
Edureka
m 編集:
ハッシュテーブルとハッシュマップの違い
var str = '犬は猫を追いかけた' var patt1 = / ^ the / m
出力:
インクルード
ブラケット
ブラケットは、を見つけるために使用されます 文字の範囲。
式 | 説明 |
[abc] | 角かっこで囲まれた文字を検索します |
[^ abc] | 角かっこで囲まれていない文字を検索します |
[0-9] | これにより、角かっこの間の任意の数字が検索されます |
[^ 0-9] | 角かっこの間に数字以外のNOTが見つかります |
例:
var str = 'Edureka Online 123' var ex1 = / [e] / gi // [abc] var ex2 = / [^ e] / gi // [^ abc] var ex3 = / [2] / g // [ 0-9] var ex4 = / [^ 2] / g // [^ 0-9]
出力:
E、e、ed、u、r、k、a、O、n、l、i、n、1,2,3 2 E、d、u、r、e、k、a、O、n、l、 i、n、e、1,3
メタ文字
メタ文字は、 特別な意味 。
メタ文字 | 説明 |
に | 単語文字を探します |
に | 単語以外の文字を検索します |
d | 数字を見つけます |
D | 数字以外の文字を検索します |
s | 空白文字を見つけます |
S | 空白以外の文字を検索します |
b | 単語の最初/最後に一致するものが見つかります |
B | 一致するものを探しますが、単語の最初/最後ではありません |
f | 改ページ文字を検索します |
r | キャリッジリターン文字を検索します |
v | 垂直タブ文字を検索します |
t | タブ文字を見つけます |
例を見て、これらがどのように機能するかを見てみましょう メタ文字 使用されています:
var str = '100%本物' var pattern1 = / w / g var pattern2 = / W / g var pattern2 = / d / g var pattern2 = / D / g var pattern2 = / s / g var pattern2 = / S / g
出力:
1,0,0、G、e、n、u、i、n、e%1,0,0%、G、e、n、u、i、n、e
1,0,0、%、G、e、n、u、i、n、e
定量化子
定量化 | 説明 |
n + | 少なくとも1つのnを含む任意の文字列に一致します |
n * | これは、0回以上のnの出現を含む任意の文字列に一致します |
n? | これは、nが0個または1個含まれる任意の文字列に一致します |
n {X} | Xnのシーケンスを含むすべての文字列に一致します |
n {X、Y} | XからYnのシーケンスを含むすべての文字列に一致します |
n {X、} | 少なくともXnのシーケンスを含むすべての文字列に一致します |
n $ | 末尾がnの文字列と一致します |
例を見て、これらがどのように機能するかを見てみましょう 定量化子 使用されています:
Javaでディープコピーする方法
var str = 'こんにちは、edurekaへようこそ! 1 12123'var quant1 = / e + / g var quant2 = / el * / g var quant3 = / 1?/ G var quant4 = / d {2} / g
出力:
and、and、and、and、and、ell、el、and、and ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 、、 1 、、、 12.12
オブジェクトのプロパティ
プロパティ | 説明 |
ビルダー | RegExpオブジェクトのプロトタイプを作成した関数を返します |
グローバル | 「g」修飾子が設定されているかどうかを確認します |
ignoreCase | 「i」修飾子が設定されているかどうかを確認します |
lastIndex | 次の一致を開始するインデックスを指定します |
マルチライン | 「m」修飾子が設定されているかどうかを確認します |
例を見て、これらがどのように機能するかを見てみましょう オブジェクトのプロパティ 使用されています:
var pattern1 = new RegExp( 'Welcome to Edureka'、 'g')var result1 = pattern1.constructor var str = 'Hello World!' var pattern2 = / Wor / g var result2 = pattern2.global var pattern3 = / hel / i var result3 = pattern3.ignoreCase
出力:
function RegExp(){[ネイティブコード]} true true
オブジェクトメソッド
方法 | 説明 |
コンパイル() | 正規表現をコンパイルします |
exec() | 文字列内の一致をテストし、最初の一致を返します |
テスト() | 文字列内の一致をテストし、trueまたはfalseを返します |
toString() | 正規表現の文字列値を返します |
exec() 方法:
var str = 'Edurekaオンラインコース' var method1 = new RegExp( 'e')var result = method1.exec(str)
出力:
です
試験方法 :
var str = 'Edurekaオンラインコース' var method1 = new RegExp( 'e')var result = method1.exec(str)
出力:
true
toString() 方法 :
var method2 = new RegExp( 'Welcome to edureka'、 'g') var result = method2.toString()
出力:
/ edurekaへようこそ/ g
これらは、定義するためのさまざまな方法のいくつかでした JavaScript正規表現 。これで、記事は終わりです。 JavaScript正規表現とは何か、そして式を定義するためのさまざまな方法を理解していただければ幸いです。
JavaScript関数について理解したので、 Edurekaによる。 Web開発認定トレーニングは、HTML5、CSS3、Twitter Bootstrap 3、jQuery、およびGoogle APIを使用して印象的なウェブサイトを作成し、Amazon Simple Storage Service(S3)にデプロイする方法を学ぶのに役立ちます。
質問がありますか? 「JavaScript正規表現」のコメントセクションにその旨を記載してください。折り返しご連絡いたします。