私は、このORIGINAL文字列をPHPを使用して以下のRESULTに変換しようとしています。php str_replace関数の問題
ORIGINAL: "The quick <font color="brown">brown</font> fox jumps over the lazy dog"
RESULT:"god yzal eht revo spmuj xof <font color="brown">nworb</font> kciuq ehT"
これまでの説明は以下のとおりです。
まず、HTMLタグをオリジナルから取り除きます。
$originalStr = "The quick <font color='brown'>brown</font> fox jumps over the lazy dog";
$stripTags = strip_tags($originalStr);
これは、迅速な茶色のキツネになり怠惰な犬の上にジャンプし、
第二に、私はstrrev機能
$reverseStr = strrev($stripTags);
$brown = strrev("brown");
を使用して、「ブラウン」の結果と単語を逆にこれは、結果として得られる結果となる。
第3に、私はstr_replace関数を使用してreverseStrから$ brownを探し、$ openFont $ brown $ closeFontに置き換えようとしています。
$openFont = "<font color='brown'>";
$closeFont = "</font>";
$result = str_replace($brown, $openFont.$brown.$closeFont, $reverseStr);
echo "result -->" . $result . "<br/><br/><br/>";
これは神に結果yzal EHT spmuj XOF kciuq EHT、結果として同じではありませんREVO。
font()タグの特殊文字のように、文字列を置き換えるstr_replaceをブロックしている可能性があります。
$result = str_replace($brown, "TEST", $reverseStr);
echo "result -->" . $result . "<br/><br/><br/>";
これはyzal EHT REVO spmuj XOFテストkciuq EHT
は誰もが知っていstr_replaceに特殊文字を受け付けていません神に結果?私はこの問題をどのように解決すべきかを知っていますか?
問題を解決する別の方法がある場合は、私もあなたの提案を聞いていただければ幸いです。
(*これは私がアルゴリズムテストのウェブサイトで解決しようとしています実用的な質問の一つである)
更新日:私は、フォントタグがあった場所と考えるのはとてもダム感じます。タグはフォントの色を変更するためのものなので、最初は完全に機能していました。皆さんありがとうございました!
特殊文字が最終結果とは何の関係もないはずです。 '$ openFont =" "; $ closeFont = ""; $ brown = strrev( "brown"); $ reverseStr = 'god yzal eht revo spmuj xof nworb kciuq ehT'; $ result = str_replace($ brown、$ openFont。$ brown。$ closeFont、$ reverseStr);は完璧に動作します。この前にコードに他に間違いがないことを確認してください。 '$ reverseStr;'変数を宣言します。 – Aydin4ik
完璧な作業:https://eval.in/850081 –
これは面白い就職面談ホワイトボードの質問の1つのような感じです – Phil