ホームページ > 記事 > ウェブフロントエンド > 正規表現を使用して回避策を見つける方法
今回は、正規表現を使用して回避策を見つける方法と、正規表現を使用して回避策を見つけるときの注意事項について説明します。実際のケースを見てみましょう。
この記事の例では、正規表現チュートリアルの前後のルックアラウンドについて説明します。参考として、次のようにみんなと共有してください。
注: すべての例では、正規表現の一致結果はソース テキストの [] の間に含まれています。一部の例は、Java を使用して実装されます。 Java 自体での正規表現の使用法については、対応する場所で説明します。すべての Java サンプルは JDK1.6.0_13 でテストされています。
1. 問題の概要HTML ページで、ページのタグ、つまり
Text:
正規表現:
<[Tt][Ii][Tt][Ll] [ええ] >.*? [Tt][いい][Tt][Ll][ええ]>結果:
【
前方検索では、一致する必要があるが結果として返されないパターンを指定します。前方検索は実際には、?= で始まり、一致するテキストが = の後に続く部分式です。
URL アドレスのプロトコル部分を照合する例を見てみましょう:
テキスト:
http://blog.csdn.net/mhmyqn正規表現: .
+(?=:)結果:
【http】://blog.csdn.net/mhmyqn 分析: URL アドレスのプロトコル部分は: より前の部分で、パターン .+ は任意のテキストと一致し、部分表現 (?=: ) は : と一致しますが、一致した : は結果に表示されません。 ?= を使用して、正規表現エンジンに、: が見つかる限り問題はありませんが、最終的な戻り結果には含まれないことを示します。ここで前方一致 (?=:) を使用せず、(:) を直接使用すると、一致結果は http: になり、これには: が含まれますが、これは私たちが望むものではありません。
注: 前後検索における前後とは、パターンと検索対象のテキストの間の相対的な位置を指します。左が前、右が後ろです。つまり、前方検索は xxx(?=xxx)、後方検索は (?3. 後方検索後方検索演算子は ?<= です。ただし、すべての正規表現実装が後方検索をサポートしているわけではありません。
JavaScriptは後方検索をサポートしていません。 たとえば、テキスト ($ で始まり、その後に数字が続く) で価格を検索する場合、結果には通貨記号は含まれません:
Text:
category1:$136.25,category2:$28,category3: $88.60正規表現:
( ?<=$)d+(.d+)?結果:
category1:$【136.25】,category2:$【28】,category3:$ 【88.60】分析: ( ?
注: 前方検索パターンの長さは可変で、.、*、+ などの メタ文字を含めることができますが、後方検索パターンは固定長のみで、.、*、+ などを含めることはできません。クラスのメタキャラクターなど。
4. 前方検索と後方検索を組み合わせる
前方検索と後方検索を組み合わせて、前の HTML タグ間のテキストの問題を解決します:
Text:
正規表現: (?<=<[Tt][Ii][Tt][Ll][Ee]>).*?(? = [Tt][Ii][Tt][Ll][Ee]>)
結果:
分析: 結果から、問題が完全に解決されたことがわかります。 (?<=<[Tt][Ii][Tt][Ll][Ee]>) は、
5. 前方検索と後方検索を無効にする
前述した前方検索と後方検索は、通常、返される一致結果のテキストの位置を決定するために使用されます。一致結果の前後にどのようなテキストがなければならないか)。この使い方を前方検索、前方検索と呼びます。指定されたパターンに一致しないテキストを検索する、負の前方検索と負の後方検索もあります。
前方および後方検索の演算子:
(?=) | 正前方検索 |
(?!) | 負の前方検索 |
(?& lt;= ) | 正の後方検索 |
(? | 負の後方検索 |
たとえば、テキスト内に価格 ($ で始まり、その後に数字が続きます) と数量があります。価格と数量を確認するには、まず価格を見てみましょう:
テキスト: この注文で 5 ドル節約できました。 (?<=$ )d+
結果: この注文でリンゴ 10 個、オレンジ 15 個、梨 10 個に対して
【$30】を支払いました【$5】 を節約しました。
数量:テキスト: リンゴ 10 個、オレンジ 15 個、梨 10 個に 30 ドル支払いました。
【10】のリンゴ、【15】 の梨、そして
【10】の梨を購入しました。 order.
この記事の事例を読んだ後、あなたはその方法をマスターしたと思います、よりエキサイティングです php中国語ウェブサイトの他の関連記事にご注意ください! 推奨読書: 正規表現チュートリアルの位置一致チュートリアル(コード付き)
phpとjsを使用して、数字と文字を組み合わせたパスワードの正規一致を実装します
以上が正規表現を使用して回避策を見つける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。