正規表現に関する N 個の関連質問
正規表現に関する N 個の質問
うーん、数日前の投稿で述べたように、私は正規表現を学び始めました
3 ~ 2 日手探りで、今では実際にできる質問がいくつかありますわかりません
私が今持っている本はあまり詳しくありませんが、百度百科で知りました
本題に戻ります
============== ====== =================
===================== ======== ========
質問 1:
お聞きしたいのですが、正規表現では通常、コンテンツをラップするために
/ を使用する必要がありますか? /
もしそうなら、それが修飾子の場合、修飾子は 2 番目の / 記号の後に書く必要がありますか (たとえば、/aAa/i は修飾子として i を使用し、2 番目の / 記号の後に置く必要があります)
これは Baidu Encyclopedia から学びました。次のようになります。
$
は行末記号と一致します。たとえば、正規表現 weasel$ は、文字列「彼はイタチです」
の末尾には一致しますが、文字列「彼らはイタチの群れです。」
には一致しないので、このように書きました。 PHP コードのデバッグでは、
$str2="彼はイタチです";
$pm2='weasel$';
if(preg_match($pm2,$str2))
{
echo 'True
';
}
else
{
echo 'False
';
}
しかし結果はは失敗です
長い間いじくり回した後、最終的に
$pm2='weasel$';
を
$pm2='/weasel$/';
に変更することに成功しました。 , でも百科事典は失敗しました そんなこと言ってないです…
よく読んでなかったかもです
ここで確認させてください 検索内容は左右の/記号と修飾子で囲まれています。 2 番目の / 記号の後にありますよね? 書き方のルールすらまだわかりません...ましてやマッチングルール
========。 ====================== =========
================ ======================
質問 2:
「メタキャラクター」について言及している百科事典の最初の表では、* 記号の機能4 行目に記載されているように、マッチングに .* を使用することは理解していますが、その後に「たとえば、
そこで、上記のコードを使用してテストしましたが、
が見つからないことがわかりました~~~ ~~~~~~~~~~~~~~~~~~~
$str1=<<
test;
$pm1='/
if(preg_match($pm1,$str1))
{
echo '1. 見つかりました< ;br/>';
}
else
{
echo ' 1. 見つかりません
;
}
~~~~~~~~~~~~~~~~~~~~~
ここでは、
================== ===================
======== ==================== =========
質問 3:
実際にはエスケープ文字として理解しますが、 C言語やPHPと同じで、nは改行文字、
tはタブ文字、\は/、$は転送されます。 $ か何かです
============== =======================
======================== ==============
質問 4:
次のコードは、百科事典の文字テーブルの 7 行目に基づいています。たとえば、正規表現
$str1=< 内の文字「the」と一致します。 ;
賢明な
テストのための
$pm1='/
if(preg_match($pm1,$str1))
{
echo '1. 見つかりません
';
}
else
{
echo '1. 見つかりません
';
}
見つからない理由は、メタキャラクター "" をその後に追加したためです。すべてのソフトウェアがサポートしているわけではありません。
=============== ======================= =
====================== ===============
質問5:
?番号の導入について、百度では全く理解できなかったので他の資料を探しました
。app?path の ? 番号の前にあるアプリはパスの前に 1 回出現すれば一致することは理解していますが、
$str1 のような文字の設定は理解できません。 =<<
test;
$pm1='/df?e/';
if (preg_match($pm1,$str1))
{
echo '1. 見つかりません
';
}
else
{
echo '1 が見つかりません
';
}
でも一致します! df は e の後にあります。これでは無駄に学習したような気がします。ルールはまだです!
-----解決策------------- -------
半分読みました。
/ は、定期的な状態が開始されたことを通知します。2 番目の / は、定期的な状態が終了したことを通知します。実際、これは単なる組み合わせです。## や他の文字を使用して、いわゆる始まりと終わりを置き換えることもできます。
ここで、/xxxxa/xxxxb/の場合、正規表現はxxxxaに到達すると終了するとみなしてしまい、後ほどエラーが発生しますので、この時点で単なる文字であることを明確にするためにエスケープする必要があります。終わりではなく真ん中。 これが、escape
$str1=<<
test;
$pm1='/
ここでの一致条件は、
残りは読んでいないので、他の人に教えてください(笑)
------解決策------------------
質問 1:
/これが実際の正規表現です/
正規表現は途中で // で囲む必要があります。修飾子がある場合は、最後の /
の後に追加します。例: preg_match( '/aaa $/is') ここでの is は修飾子です。それぞれの意味については、
を確認する必要があります。もちろん、// に含まれる正規表現にも / が含まれている場合は注意が必要です。
ここでの正規表現は // でラップされているか、または #@ でラップできることにも注意してください。
質問 2:
もちろんです。探しています。探しているのは
質問 3:
質問 1 で述べたように、正規表現をラップするために / も使用する場合は、当然エスケープする必要があり、$^? like はすべて特殊文字です。特殊文字を直接一致させたい場合は、もちろんエスケープする必要があります。そうしないと、コンピュータはそれらを特殊文字として扱います。 例:
内容: aaabbb$ccc
bb$cc が
1 に準拠しているかどうかを照合したい場合: /bb$cc/ これにはもちろん問題がありますが、文字通りの意味は上記と一致していますが、コンピューターは $ を最終的な意味として認識します
2。 : /bb$cc / これは正しいです

ホット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)

ホットトピック









多くのユーザーはスマートウォッチを選ぶときにファーウェイブランドを選択しますが、その中でもファーウェイ GT3pro と GT4 は非常に人気のある選択肢であり、多くのユーザーはファーウェイ GT3pro と GT4 の違いに興味を持っています。 Huawei GT3pro と GT4 の違いは何ですか? 1. 外観 GT4: 46mm と 41mm、材質はガラスミラー + ステンレススチールボディ + 高解像度ファイバーバックシェルです。 GT3pro: 46.6mm および 42.9mm、材質はサファイアガラス + チタンボディ/セラミックボディ + セラミックバックシェルです。 2. 健全な GT4: 最新の Huawei Truseen5.5+ アルゴリズムを使用すると、結果はより正確になります。 GT3pro: ECG 心電図と血管と安全性を追加

Windows 11 で Snipping Tool が機能しない理由 問題の根本原因を理解すると、適切な解決策を見つけるのに役立ちます。 Snipping Tool が正しく動作しない主な理由は次のとおりです。 フォーカス アシスタントがオンになっている: これにより、Snipping Tool が開かなくなります。破損したアプリケーション: 起動時にスニッピング ツールがクラッシュする場合は、破損している可能性があります。古いグラフィック ドライバー: 互換性のないドライバーは、スニッピング ツールに干渉する可能性があります。他のアプリケーションからの干渉: 実行中の他のアプリケーションが Snipping Tool と競合する可能性があります。証明書の有効期限が切れています: アップグレード プロセス中のエラーにより、この問題が発生する可能性があります。これらの簡単な解決策は、ほとんどのユーザーに適しており、特別な技術知識は必要ありません。 1. Windows および Microsoft Store アプリを更新する

今日の急速な技術発展の時代では、雨後の筍のようにプログラミング言語が出現しています。多くの注目を集めている言語の 1 つは Go 言語です。Go 言語は、そのシンプルさ、効率性、同時実行の安全性などの機能により多くの開発者に愛されています。 Go 言語は、多くの優れたオープンソース プロジェクトがある強力なエコシステムで知られています。この記事では、厳選された 5 つの Go 言語オープンソース プロジェクトを紹介し、読者を Go 言語オープンソース プロジェクトの世界へ導きます。 KubernetesKubernetes は、自動化されたオープンソースのコンテナ オーケストレーション エンジンです。

「Go 言語開発の要点: 5 つの人気フレームワークの推奨事項」 高速で効率的なプログラミング言語として、Go 言語はますます多くの開発者に好まれています。開発効率を向上させ、コード構造を最適化するために、多くの開発者はフレームワークを使用してアプリケーションを迅速に構築することを選択します。 Go 言語の世界には、選択できる優れたフレームワークが数多くあります。この記事では、5 つの人気のある Go 言語フレームワークを紹介し、読者がこれらのフレームワークをよりよく理解して使用できるように、具体的なコード例を示します。 1.GinGin は高速な軽量 Web フレームワークです。

パート 1: 最初のトラブルシューティング手順 Apple のシステムステータスを確認する: 複雑な解決策を掘り下げる前に、基本から始めましょう。問題はデバイスにあるのではなく、Apple のサーバーがダウンしている可能性があります。 Apple のシステム ステータス ページにアクセスして、AppStore が適切に動作しているかどうかを確認してください。問題があれば、Apple が修正してくれるのを待つしかありません。インターネット接続を確認します。「AppStore に接続できません」問題は接続不良が原因である場合があるため、安定したインターネット接続があることを確認してください。 Wi-Fi とモバイル データを切り替えるか、ネットワーク設定をリセットしてみてください ([一般] > [リセット] > [ネットワーク設定のリセット] > [設定])。 iOS バージョンを更新します。

PHP における echo キーワードの役割と使用法の詳細な説明 PHP は、Web 開発で広く使用されているサーバーサイド スクリプト言語です。 echo キーワードは、PHP でコンテンツを出力するために使用されるメソッドです。この記事では、echoキーワードの機能と使い方を詳しく紹介します。機能: echo キーワードの主な機能は、コンテンツをブラウザに出力することです。 Web 開発では、フロントエンド ページにデータを動的に表示する必要がありますが、このとき、echo キーワードを使用してデータをページに出力できます。 e

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Laravel は、拡張性と効率性に優れた人気の PHP フレームワークであり、開発者が高品質の Web アプリケーションを迅速に構築できる強力なツールとライブラリを多数提供しています。その中でも、LaravelEcho と Pusher は、WebSocket 通信を簡単に実装できる 2 つの非常に重要なツールであり、この記事では、Laravel アプリケーションでこれら 2 つのツールを使用する方法について詳しく説明します。 WebSocket とは何ですか? Webソケット
