検索
ホームページウェブフロントエンドjsチュートリアル文字のグループに一致する正規表現を記述する方法

今回は、文字のグループに一致する正規表現の書き方と、文字のグループに一致する正規表現の注意事項について説明します。実際のケースを見てみましょう。

この記事の例では、

正規表現チュートリアルで文字のグループを照合する方法を説明します。参考として、次のようにみんなと共有してください。

注: すべての例では、正規表現の一致結果はソース テキストの [] の間に含まれています。一部の例は、Java を使用して実装されます。 Java 自体での正規表現の使用法については、対応する場所で説明します。すべての Java サンプルは JDK1.6.0_13 でテストされています。

1. 複数の文字のいずれかを一致させる

前回の記事「正規表現チュートリアル: 単一文字の一致の詳細な説明」では、na または sa で始まるテキスト ファイルを一致させる例で、使用した正規表現式は .a..txt です。 cal.txt という別のファイルがある場合は、それも照合されます。 na または sa で始まるファイルのみを一致させたい場合はどうすればよいですか?

n または s のみを検索したいので、任意の文字に一致する . を使用することは明らかに不可能です。正規表現では、[and] を使用して

文字セット

の組み合わせを定義できます。[and] を使用して定義された文字セットでは、これら 2 つのメタ文字間のすべての文字がセットの一部となり、文字セットの一致結果は次のようになります。セットの任意のメンバーと一致するテキスト。 前と同様の例を見てみましょう:

Text:

sales.txt

na1.txt

na2.txt

sa1.txt

sanatxt。 txt

cal.txt

正規表現:

[ns]a..txt

結果:

sales.txt

【na1.txt】

【な2. 】

【sa1.txt】

sanatxt.txt

cal.txt

分析: ここで使用される正規表現は [na] で始まり、このセットは文字 n または s に一致します。他の文字には一致しません。 [ と ] はどの文字とも一致しません。文字のセットを定義するだけです。次に、 a は文字 a に一致し、 . 文字自体に一致し、 txt は txt 文字自体に一致し、一致結果は予想と一致します。

ただし、ファイルの 1 つが usa1.txt である場合、それも照合されます。これは後述する位置合わせの問題である。

2. 文字セット間隔を使用します

上記の例で、na または sa で始まり、その後に数字が続くファイルのみを照合したい場合はどうすればよいでしょうか?正規表現 [ns]a..txt では、. は数字を含む任意の文字と一致します。この問題は、文字のコレクションを使用して解決できます:

sales.txt

na1.txt

na2.txt

sa1.txt

san.txt

さなxt .txt

cal.txt

正規表現:

[ns]a[0123456789].txt

結果:

sales.txt

【na1.txt】

【 na2 .txt】

【sa1.txt】

さん.txt

sanatxt.txt

cal.txt

分析: 結果からわかるように、na または sa で始まりその後に数字が続くファイルのみが一致し、san.txt は一致しません。 set [0123456789] は、3 番目の文字を数字のみに制限するために使用されます。

正規表現では、0 ~ 9、a ~ z などの一部の文字間隔が頻繁に使用されます。文字間隔の定義を簡素化するために、正規表現では文字間隔を定義するための特別なメタキャラクタが提供されます。上の例と同様に、正規表現を使用して [ns]a[0-9].txt と一致させることができ、結果は上記とまったく同じになります。

文字間隔は数字に限定されません。以下は有効な文字間隔です:

[A-F]: A から F までのすべての大文字と一致します。

[A-Z]: A から Z までのすべての大文字と一致します。

[A-z]: ASCII 文字 A から ASCII 文字 z までのすべての文字と一致します。ただし、この間隔は一般的には使用されません。これは単なる例です。 ASCII の Z と a の間に配置される [ や ^ などの文字も含まれるためです。

文字範囲の最初と最後の文字には、ASCII 文字リスト内の任意の文字を使用できます。ただし、実際に使用する場合、最も一般的に使用される範囲は数字とアルファベットです。

注: 文字間隔を定義する場合、間隔の最後の文字を最初の文字より小さくすることはできません ([9-0] など)。 - メタキャラクターは [ と ] の間にのみ出現できるため、[ と ] の外側にある場合、それは単なる通常の文字であり、 - それ自体とのみ一致します。

同じ文字セットで複数の文字範囲を指定できます。たとえば、[0-9a-zA-Z] は、任意の大文字、小文字、数字と一致します。

Web ページ内の色の一致の例を見てください:

テキスト:

<span>测试</span>

正規表現: #[0-9A-Fa-f] [0-9A-Fa-f] [0-9A-Fa - f] [0-9A-Fa-f] [0-9A-Fa-f] [0-9A-Fa-f]

結果: 【#3636FF】 ;height:30px; width:60px;">テスト

分析: Web ページでは、色は一般に # で始まる RGB 値として表され、R は赤、G は緑、B は青を表します。 、RGB のさまざまな組み合わせによって、あらゆる色をブレンドできます。 RGB 値は、白を表す #000000、黒を表す #FFFFFF、赤を表す #FF0000 のように 16 進数値で表されます。したがって、Web ページで色を一致させるための正規表現は # で始まり、その後に 6 つの同一の [0-9A-Fa-f] 文字セットが続きます (これは #[0-9A-Fa-f]{6} と省略できます)。これについては、「リピート マッチング」で後述します)。

3. 一致しない

文字セットを取得する取得する必要はありません。置き換えます。つまり、その文字セット内の文字を除いて、他の文字と一致する可能性があります。

たとえば、na または sa で始まり、数字が続かないファイルを照合するには:

Text:

sales.txt

na1.txt

na2.txt

sa1 .txt

sanatxt.txt

san.txt

正規表現: [ns]a[^0-9].txt

結果:

sales.txt

Na1.txt

na2.txt

sa1.txt

sanatxt.txt

san.txt】分析:この例で使用されるパターンは、まさに反対です。前のものは [0-9] は数字のみに一致しますが、ここでは [^0-9] は数字以外に一致します。 🎜

注: [ と ] の間の ^ は否定を意味します。正規表現の先頭にある場合は、位置一致が一致することを意味します。これについては後で説明します。同時に、^ の効果は、^ 文字の直後の文字または文字間隔だけでなく、特定の文字セット内のすべての文字または文字間隔に適用されます。たとえば、[^0-9a-z] は、数字や小文字に一致しないことを意味します。

4. 概要

メタキャラクター [および] は文字セットを定義するために使用され、その意味は、セット内の文字の 1 つと一致する必要があるということです。文字セットを定義するには 2 つの方法があります。1 つはすべての文字をリストする方法、もう 1 つは文字間隔の形式で指定されたメタ文字を使用する方法です。文字セットは、メタ文字 ^ を使用して否定できます。これにより、指定された文字セットが照合操作から強制的に除外されます。文字セット内の文字を除き、他の文字も照合できます。

次の記事では、正規表現でのいくつかのメタキャラクターの使用について説明します。

この記事の事例を読んだ後、あなたはその方法をマスターしたと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。

推奨読書:

JS パスワード強度検証の正規表現 (コード付き)

JQ の通常の検証メソッドには中国語を含めることはできません

以上が文字のグループに一致する正規表現を記述する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PythonとJavaScriptの未来:傾向と予測PythonとJavaScriptの未来:傾向と予測Apr 27, 2025 am 12:21 AM

PythonとJavaScriptの将来の傾向には、1。Pythonが科学コンピューティングの分野での位置を統合し、AI、2。JavaScriptはWebテクノロジーの開発を促進します。どちらもそれぞれのフィールドでアプリケーションシナリオを拡大し続け、パフォーマンスをより多くのブレークスルーを行います。

Python vs. JavaScript:開発環境とツールPython vs. JavaScript:開発環境とツールApr 26, 2025 am 12:09 AM

開発環境におけるPythonとJavaScriptの両方の選択が重要です。 1)Pythonの開発環境には、Pycharm、Jupyternotebook、Anacondaが含まれます。これらは、データサイエンスと迅速なプロトタイピングに適しています。 2)JavaScriptの開発環境には、フロントエンドおよびバックエンド開発に適したnode.js、vscode、およびwebpackが含まれます。プロジェクトのニーズに応じて適切なツールを選択すると、開発効率とプロジェクトの成功率が向上する可能性があります。

JavaScriptはCで書かれていますか?証拠を調べるJavaScriptはCで書かれていますか?証拠を調べるApr 25, 2025 am 12:15 AM

はい、JavaScriptのエンジンコアはCで記述されています。1)C言語は、JavaScriptエンジンの開発に適した効率的なパフォーマンスと基礎となる制御を提供します。 2)V8エンジンを例にとると、そのコアはCで記述され、Cの効率とオブジェクト指向の特性を組み合わせて書かれています。3)JavaScriptエンジンの作業原理には、解析、コンパイル、実行が含まれ、C言語はこれらのプロセスで重要な役割を果たします。

JavaScriptの役割:WebをインタラクティブでダイナミックにするJavaScriptの役割:WebをインタラクティブでダイナミックにするApr 24, 2025 am 12:12 AM

JavaScriptは、Webページのインタラクティブ性とダイナミズムを向上させるため、現代のWebサイトの中心にあります。 1)ページを更新せずにコンテンツを変更できます。2)Domapiを介してWebページを操作する、3)アニメーションやドラッグアンドドロップなどの複雑なインタラクティブ効果、4)ユーザーエクスペリエンスを改善するためのパフォーマンスとベストプラクティスを最適化します。

CおよびJavaScript:接続が説明しましたCおよびJavaScript:接続が説明しましたApr 23, 2025 am 12:07 AM

CおよびJavaScriptは、WebAssemblyを介して相互運用性を実現します。 1)CコードはWebAssemblyモジュールにコンパイルされ、JavaScript環境に導入され、コンピューティングパワーが強化されます。 2)ゲーム開発では、Cは物理エンジンとグラフィックスレンダリングを処理し、JavaScriptはゲームロジックとユーザーインターフェイスを担当します。

Webサイトからアプリまで:JavaScriptの多様なアプリケーションWebサイトからアプリまで:JavaScriptの多様なアプリケーションApr 22, 2025 am 12:02 AM

JavaScriptは、Webサイト、モバイルアプリケーション、デスクトップアプリケーション、サーバー側のプログラミングで広く使用されています。 1)Webサイト開発では、JavaScriptはHTMLおよびCSSと一緒にDOMを運用して、JQueryやReactなどのフレームワークをサポートします。 2)ReactNativeおよびIonicを通じて、JavaScriptはクロスプラットフォームモバイルアプリケーションを開発するために使用されます。 3)電子フレームワークにより、JavaScriptはデスクトップアプリケーションを構築できます。 4)node.jsを使用すると、JavaScriptがサーバー側で実行され、高い並行リクエストをサポートします。

Python vs. JavaScript:ユースケースとアプリケーションと比較されますPython vs. JavaScript:ユースケースとアプリケーションと比較されますApr 21, 2025 am 12:01 AM

Pythonはデータサイエンスと自動化により適していますが、JavaScriptはフロントエンドとフルスタックの開発により適しています。 1. Pythonは、データ処理とモデリングのためにNumpyやPandasなどのライブラリを使用して、データサイエンスと機械学習でうまく機能します。 2。Pythonは、自動化とスクリプトにおいて簡潔で効率的です。 3. JavaScriptはフロントエンド開発に不可欠であり、動的なWebページと単一ページアプリケーションの構築に使用されます。 4. JavaScriptは、node.jsを通じてバックエンド開発において役割を果たし、フルスタック開発をサポートします。

JavaScript通訳者とコンパイラにおけるC/Cの役割JavaScript通訳者とコンパイラにおけるC/Cの役割Apr 20, 2025 am 12:01 AM

CとCは、主に通訳者とJITコンパイラを実装するために使用されるJavaScriptエンジンで重要な役割を果たします。 1)cは、JavaScriptソースコードを解析し、抽象的な構文ツリーを生成するために使用されます。 2)Cは、Bytecodeの生成と実行を担当します。 3)Cは、JITコンパイラを実装し、実行時にホットスポットコードを最適化およびコンパイルし、JavaScriptの実行効率を大幅に改善します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!