⊗ppPmRgSHt 237 of 447 menu

PHP正規表現における文字クラス内のキャレット記号

ご存知のように、[] 内のキャレットは、 括弧の先頭に書かれた場合、否定を意味します。 したがって、この括弧内では特殊文字となります。 キャレットを文字として扱うには、エスケープするか、 先頭以外の位置に配置する必要があります。

次の例での検索パターンは次のとおりです: 最初の文字は 'd' 以外、その後ろに 2つの 'x' 文字

<?php $str = 'axx bxx ^xx dxx'; $res = preg_replace('#[^d]xx#', '!', $str); ?>

結果、変数には以下が格納されます:

'! ! ! dxx'

次に、検索パターンは次のとおりです:最初の文字 は 'd' または '^'、その後ろに 2つの 'x' 文字

<?php $str = 'axx bxx ^xx dxx'; $res = preg_replace('#[d^]xx#', '!', $str); ?>

結果、変数には以下が格納されます:

'axx bxx ! !'

キャレットを先頭から移動させる代わりに、 バックスラッシュでエスケープすることで、 文字そのものを意味するようにすることができます:

<?php $str = 'axx bxx ^xx dxx'; $res = preg_replace('#[\^d]xx#', '!', $str); ?>

結果、変数には以下が格納されます:

'axx bxx ! !'

実践タスク

次の文字列が与えられています:

<?php $str = '^xx axx ^zz bkk @ss'; ?>

次のパターンにマッチする文字列を見つける 正規表現を書いてください:キャレットまたはアットマーク、 その後ろに2つのラテン文字

次の文字列が与えられています:

<?php $str = '^xx axx ^zz bkk @ss'; ?>

次のパターンにマッチする文字列を見つける 正規表現を書いてください:キャレットでもアットマークでもなく、 その後ろに2つのラテン文字

次の文字列が与えられています:

<?php $str = '^xx axx ^zz bkk'; ?>

次のパターンにマッチする文字列を見つける 正規表現を書いてください:キャレット以外、 その後ろに2つのラテン文字

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否