PHP では通常 $ 記号がエスケープされますが、スラッシュは機能しません。

WBOY
リリース: 2023-03-02 09:38:01
オリジナル
1177 人が閲覧しました

<code>$pattern = "/\{\$/";
preg_match($pattern, $this->content, $matches);
var_dump($matches)</code>
ログイン後にコピー
ログイン後にコピー

没有匹配到
但是改成两斜杠就管用了

回复内容:

<code>$pattern = "/\{\$/";
preg_match($pattern, $this->content, $matches);
var_dump($matches)</code>
ログイン後にコピー
ログイン後にコピー

没有匹配到
但是改成两斜杠就管用了

因为PHP里双引号内会解析变量,所以换成单引号,或再加个\即可。

<code>$pattern = "/\{\$var/";    // $var变量  
$pattern = '/\{\$/';</code>
ログイン後にコピー

在字符串里\本身就用为转义字符,所以在字符串里表示\需要使用\\。所以在对应$时,其实需要进行两次转意,也就是需要\\$

字符串中的单个\ 是不能被正确识别的 需要\\
有明大大 已经说得很详细了
$pattern = "/\\{\\$/";

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!