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."; } PHPマニュアルに↑のように書いてあるわけよ ここでダブルクオーテーションで囲まれてる"/\bweb\b/i"のことを文字列リテラルと言うわけ PHPでダブルクオーテーションで囲まれた文字列リテラルはその中の\が特別な意味を持つんだ これをエスケープコードと言う エスケープコードを普通の文字に直すことを「エスケープする」と言ってこの場合は\を二つ重ねて\\と書くことでエスケープされてただの\を表すようになる だから\bを書きたい時には\\bと書かなきゃいけないはず なのにエスケープしなくていいのか? というのが俺の疑問