10

2 つのアスタリスクの間でテキストを太字にし、1 つのアスタリスクの間でテキストを斜体にする PHP 関数を作成したかった(stackoverflow のエディターのように)

同じルールが適用されます。* と単語の間にスペースがある場合、レンダリングされません。

誰が私を助けることができますか? やってみましたが、奇数のアスタリスク「< b >」と偶数のアスタリスク「< /b >」の作り方がわからず、ここまでしか行きませんでした。

(スペースなしでは入力できません。stackoverflow はその間のテキストを太字でレンダリングします.....)

$thenewtext = str_replace("**", "<b>", "**Hello World** of PHP");
4

3 に答える 3

21

単純な正規表現でうまくいきます。

$thenewtext = preg_replace('#\*{2}(.*?)\*{2}#', '<b>$1</b>', '**Hello World** of PHP');
于 2013-10-08T19:36:04.107 に答える