最近、discuz のソースコードを勉強しているときに、正規表現の 1 つが大まかに次のように記述されていることを発見しました: preg_match('#^[a-z]#',"");
最初は混乱しました。最初のものは一致しますか?では、^ は何から始めるべきかという意味ではないでしょうか?これはもはや矛盾ではありません。そこで、preg_match の使用方法を読むために公式 Web サイトにアクセスし、おそらく次のような例をいくつか見つけました。
if (preg_match("/\bweb\b/i", "PHP is the web scripting language of choice.")) { echo "A match was found.";} else { echo "A match was not found.";}
pattern の定義はすべて // で囲まれています。後でテストしてみると、## は // に置き換えることができることがわかりました。深く勉強すればするほど、実際には辺の長さが長くならないことがわかります。