ホームページ >バックエンド開発 >PHPチュートリアル >[緊急ヘルプ] 非サイト ドメイン名を通常またはクラスに置き換える、PHP
ユーザーの投稿内のすべてのリンク (*このサイト以外のドメイン名のリンク) を指定されたリンクに置き換えるフォーラム プログラム
例: ソース コード:
------------- ------------------------------------
りー
---------- --------------------------------------------------
に置き換えてください
------------------------
rree
-------------- ------------ ------------
要件: AAA.com 以外のドメイン名のすべてのリンクを「#」ポンド記号に置き換えます
次のコードは、すべてのリンクをポンド記号に置き換えることはできますが、それが AAA.COM であるかどうかを判断することはできません
echo preg_replace("/(?83e18cf7a997e010efaa27dc3b835886]*)(?=>)/ i","javascript:;", "8d6c743370abe75e3ff7133487e729d4こんにちは、ここをクリックしてご覧ください5db79b134e9f6b82c0b36e0489ee08ed41431deef319dcdbbc2096889541c4b9こんにちは、ここをクリックしてご覧ください5db79b134e9f6b82c0b36e0489ee08ed");
鄭澤のマスターに助けを求めています。とても不安です。午前中ずっと理解できませんでした。
<a href="http://www.AAA.com/" target="_blank">AAAAA</a><a href="http://wer.123.com/" target="_blank">BBBBB</a><a href="http://adf.h4.456.com/" target="_blank">CCCCC</a><a href="http://wer.AAA.com/" target="_blank">DDDDD</a><a href="http://asdgwre.wer.222.789.com/" target="_blank">EEEEE</a><a href="http://fadsf.543.com/" target="_blank">FFFFF</a><a href="http://234r.231.com/" target="_blank">GGGGG</a>
ありがとう
<a href="http://www.AAA.com/" target="_blank">AAAAA</a><a href="#" target="_blank">BBBBB</a><a href="#" target="_blank">CCCCC</a><a href="http://wer.AAA.com/" target="_blank">DDDDD</a><a href="#" target="_blank">EEEEE</a><a href="#" target="_blank">FFFFF</a><a href="#" target="_blank">GGGGG</a>
$str = <<<str<a href="http://www.AAA.com/" target="_blank">AAAAA</a><a href="http://wer.123.com/" target="_blank">BBBBB</a><a href="http://adf.h4.456.com/" target="_blank">CCCCC</a><a href="http://www.wer.AAA.com/" target="_blank">DDDDD</a><a href="http://asdgwre.wer.222.789.com/" target="_blank">EEEEE</a><a href="http://fadsf.543.com/" target="_blank">FFFFF</a><a href="http://234r.231.com/" target="_blank">GGGGG</a>str;echo preg_replace_callback("/http\:\/\/[^.]*[^A]+\.com\//is",function($r) { return str_replace($r[0], "#", $r[0]); },$str);
ありがとうmicrolab2009
しかし、アプリケーションでテストしたところ、いくつかの問題が見つかりました
1:非サイトリンクを置き換えるシャープ記号が付いていますが、リンク以外も置き換えられます。
例: 973b5e69bc5c577d27b6eec7eec89fd8 と www.163.com (リンク以外の文字列) はすべて #ポンド記号に置き換えられます
2: リンクを削除します
ee80b29e0779e9f1925e6d2a2f753721BBBBB5db79b134e9f6b82c0b36e0489ee08ed
および
df205f30ffb1c33702eca9c8f93d6125BBBBB5db79b134e9f6b82c0b36e0489ee08ed
処理中にエラーが発生しました。最初のものは変更できますが、2 番目のものは変更できません。
神様が私を助けてくださることを願っています、無限の感謝が私の心に流れ込んでいます...
1.b642531536ecbeffcd56e1777d81f6d3AAAA5db79b134e9f6b82c0b36e0489ee08ed
64655a418609d99b779923a95a6b7d8fBBBBB4a11e5928b3688cf38c9163b657eb5ac
a4823bd6b2d8f4a8bbc4475b78df90ccCCCCC5db79b134e9f6b82c0b36e0489ee08ed
b91d8fc4061c0e781770111fd15fa345DDDDD5db79b134e9f6b82c0b36e0489ee08ed
bbdd0315bfc2c0bb90263e268d83d335EEEE5db79b134e9f6b82c0b36e0489ee08ed
e5a4e770e5f5d343aa892d343d970d2cFFFFF5db79b134e9f6b82c0b36e0489ee08ed
56c89dae3307e2230a7275aa65bf12a7GGGGGe704aa3b4fb32c91fc6aa1e04be1fba8
http://234r.231.com
str;
echo preg_replace_callback("/ (?1f3a1bdf1b2b970d67d2f607f7873f78
2.echo preg_replace_callback ("/< ;a href="http://[^.]*[^A]+.com/" [^>]*>([^<]+)5db79b134e9f6b82c0b36e0489ee08ed/is ",function( $r) { returntrip_tags($r[0]); },$str);
まずは通常のルールを修正するだけです
ご協力ありがとうございます。はぁ〜〜〜
。