ホームページ >バックエンド開発 >PHPチュートリアル >修飾された文字列は赤色で表示されます
文字列:
私は TKPC11090987 です。あなたは TKPC10090987 ですか? TKPC10098M9Yとは誰ですか? TKMR120990U9TKMR10059E56TKMR10059E56...................................................................... ...................................
要件:
1. 各 TKPC と TKMR の後の連続 5 桁をインターセプトします。 (例のインターセプトは、TKPC には 11090、12098、TKMR には 12099、11059 などがあるはずです。)
2. 次の条件に従ってインターセプトされた数値を比較します:
2.1 TKPC 内の 2 つの数値セット (存在する場合) 11069以下、元の文字列の条件を満たすTKPC+の各グループの下8桁を赤色で表示します。
2.1 TKMR に 10999 以下の数値のセットが 2 つある場合、TKMR の各セットと条件を満たす最後の 8 桁が元の文字列で赤色で表示されます。
$s = '我是一个人TKPC11090987是你TKPC10090987吗?TKPC10098M9Y到底是谁呢?TKMR120990U9TKMR10059E56TKMR10059E56..';$d = array( 'TKPC' => '11069', 'TKMR' => '10999',);echo preg_replace_callback('/(TKPC|TKMR)(\d{5}).{3}/', function($m) use ($d) { if($m[2] <= $d[$m[1]]) return "<font color=red>$m[0]</font>"; return $m[0]; }, $s);私は TKPC11090987 です。あなたは c858d69dd81008e347cd5f5447f8e393TKPC10090987e6e38b3c62e8df885fe2e3986461aa63 ですか? c858d69dd81008e347cd5f5447f8e393TKPC10098M9Ye6e38b3c62e8df885fe2e3986461aa63誰ですか? TKMR120990U9c858d69dd81008e347cd5f5447f8e393TKMR10059E56e6e38b3c62e8df885fe2e3986461aa63c858d69dd81008e347cd5f5447f8e393TKMR10059E56e6e38b3c62e8df885fe2e3986461aa63..