ホームページ > バックエンド開発 > PHPチュートリアル > preg_replace を常に前の文字を [食べる] 方法。

preg_replace を常に前の文字を [食べる] 方法。

WBOY
リリース: 2016-06-13 13:22:10
オリジナル
977 人が閲覧しました

preg_replace を置き換えます。なぜ常に前の文字を食べるのですか...
なぜ次のコードを使用して置き換えますか? なぜ常に前の文字を食べるのですか...

コードは次のとおりです。コードの両方の行にこの問題があります...

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
        $newstext = preg_replace('/'.$r[keyname].'/u','<a href=\''.$r[keyurl].'\' target=\'_blank\' >'.$r[keyname].'</a>',$newstext,$public_r[repkeynum]);

ログイン後にコピー


PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
        $newstext = preg_replace('/[^=>]'.$r[keyname].'/u','<a href=\''.$r[keyurl].'\' target=\'_blank\' >'.$r[keyname].'</a>',$newstext,$public_r[repkeynum]);

ログイン後にコピー


例: string = "私の美しい一日はこれから始まります"
キーワードは次のとおりです: beautiful

置き換えると、次のようになります: IBeautifulこれから一日が始まります

とても落ち込んでいました....

-----解決策----------- --- ------
あなたが指摘したような状況は起こりません。 $r[キー名]は何ですか?
------解決策----------------------
最初の式は正しいです
2 番目の式これはあなたが指摘した現象です: [^=>] が 1 文字を消費します
------解決策---------
解決策
------解決策---------

$ str = "私の素晴らしい一日が始まりました";
$newstext = preg_replace('/ 素晴らしい /', '
素晴らしいecho $newstext;
?>
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート