正規表現を学習する初心者にありがちな間違い
通常ルールの利点は、使いやすいことです。数時間勉強すれば、ほとんどの通常ルールを理解できます。理解できても、実践する過程では、まだ多くのことに遭遇します。この記事では、正規表現の学習過程でよくある間違いをまとめました。
#正規表現
1.スペース
私たちは通常、コードを書くことがあります。 、スペースは通常、コードをより標準化するためのツールとして使用され、行頭の適切なインデントやタブと組み合わせることで、コードがより明確に見えます。ただし、正規表現では注意が必要です - スペース自体も照合対象の文字です。スペースを不適切に使用した場合:echo preg_match('/a{1, 3}/', "aaa") ? '匹配' : '不匹配'; // 不匹配
echo preg_match('/a{1, 3}/', "a{1, 3}") ? '匹配' : '不匹配'; // 匹配
echo preg_match('/a{1,3}/', "aaa") ? '匹配' : '不匹配'; // 匹配
2. 大文字の使用
これは理解するのは簡単ですが、基本的にはうっかりミスです。結局のところ、検索ツールで文字を検索するとき、通常は大文字と小文字の両方が一致します。場合によっては、正規表現が大文字と小文字を自動的に一致させないことを忘れることがあります:
echo preg_match('/a a a/x', "aaa") ? '匹配' : '不匹配'; // 匹配
echo preg_match('/flag/', "Flag") ? '匹配' : '不匹配'; // 不匹配
echo preg_match('/[Ff][Ll][Aa][Gg]/', "Flag") ? '匹配' : '不匹配'; // 匹配
3. 貪欲モード
量子「 」と「*」はデフォルトで貪欲モードです。初心者はそれが引き起こす問題に遭遇しないかもしれません。何が理解できませんかこれは、kano の例です:
echo preg_match('/flag/i', "Flag") ? '匹配' : '不匹配'; // 匹配
正規表現の本来の目的は、文字列内のすべての Span タグを検索することです。それらを配列に入れましたが、結果は奇妙です。両方のスパンが一度に一致しました。実際、よく考えてみると、これは当然のことであり、文字列「aaabbb」は確かに で始まり で終わります。ですが、その中の .* が一致する内容が多すぎます。「aaabbb」はすべて一致します。これは、「 」と「*」の貪欲モードです。デフォルトでは、これらは可能な限り多くの文字に一致します。最後に「?」を追加すると、この貪欲モードがキャンセルされ、可能な限り少ないコンテンツのみに一致するようになります。
preg_match_all('/<span>.*<\/span>/', "<span>aaa</span><span>bbb</span>", $matches); var_dump($matches);
今回は希望どおりの結果が得られました。
以上が正規表現を学習する初心者にありがちな間違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Golang の正規表現では、パイプ文字 | を使用して複数の単語または文字列を一致させ、各オプションを論理 OR 式として区切ります。例: 「fox」または「dog」に一致します: fox|dog は「quick」、「brown」または「lazy」に一致します: (quick|brown|lazy) 「Go」、「Python」または「Java」に一致します: Go| Python |Java は単語または 4 桁の郵便番号と一致します: ([a-zA

PHP 正規表現は、テキストの処理と変換のための強力なツールです。テキスト コンテンツを解析し、特定のパターンに従って置換またはインターセプトすることで、テキスト情報を効果的に管理できます。その中でも、正規表現の一般的な応用例は、特定の文字で始まる文字列を置換することです。

正規表現を使用して PHP で中国語を削除する方法: 1. PHP サンプル ファイルを作成する; 2. 中国語と英語を含む文字列を定義する; 3. "preg_replace('/([\x80-\xff]*)/i', '',$a);" 通常の方法では、クエリ結果から中国語の文字を削除できます。

この記事では、PHP 正規表現を使用して HTML タグを削除し、HTML 文字列からプレーン テキスト コンテンツを抽出する方法を学びます。 HTML タグを削除する方法を示すために、まず HTML タグを含む文字列を定義しましょう。

Golang の型変換における一般的なエラーと解決策 Golang を使用した開発プロセスにおいて、型変換は間違いなく頻繁に遭遇する問題です。 Golang は静的型付け言語ですが、場合によっては、interface{} 型から特定の構造型への変換や、ある基本データ型から別の基本データ型への変換など、型変換を実行する必要があります。{}ただし、型変換中にエラーが発生することがよくあるため、この記事ではよくある型変換エラーをいくつか紹介します。

C++ プログラムで発生する一般的なエラーとその解決策: 「segmentationfault」エラー C++ プログラミング プロセス中に、さまざまなエラーが発生することがよくあります。その中でよくあるエラーが「segmentationfault」です。プログラムの実行中にこのエラーが発生する場合は、通常、プログラムが存在しない、または不正なメモリ アドレスにアクセスしようとしており、プログラムがクラッシュすることを意味します。このエラーにより、プログラムの実行が失敗し、コマンド ラインまたは端末にエラー メッセージが表示される場合があります。

PHP 正規表現を使用して中国語の置換機能を実装するためのヒントを共有する Web 開発では、中国語のコンテンツを置換する必要がある状況によく遭遇します。人気のサーバーサイド スクリプト言語として、PHP は中国語の置換を簡単に実現できる強力な正規表現機能を提供します。この記事では、正規表現を使用して PHP で中国語置換を実装するためのテクニックをいくつか紹介し、具体的なコード例を示します。 1. preg_replace 関数を使用して中国語置換を実装します PHP の preg_replace 関数を使用できます

PHP は Web 開発で広く使用されているプログラミング言語で、さまざまなデータベースと対話してデータのクエリと操作を実装できます。 PHP をクエリ操作に使用する場合、よくあるエラーを避けるために特に注意する必要があるいくつかの点に注意する必要がありますが、ここでは、PHP クエリ ステートメントの注意事項とよくあるエラーを詳細に紹介し、読者がよりよく理解できるように具体的なコード例を示します。 1. データベースに接続する PHP クエリを実行する前に、まずデータベースに接続する必要があります。 PHP の組み込み mysqli (MySQLI) を使用します。