-5

-(ダッシュ)で始まるテキスト行を箇条書き( )に変換する正規表現を探しています<li>

例えば:

- This is a point
- This is another point

になる:

<li>This is a point</li>
<li>This is another point</li>

任意のアイデアをいただければ幸いです!

4

3 に答える 3

2

Markdownがあなたに代わってそれを行います。MichelFortinによるPHPの移植版があります。

また、* this *をthisに変換し、**this**をthisに変換します。完全なリストについては、公式のMarkdownサイトを参照してください。

于 2012-09-16T18:50:28.533 に答える
2

私たちはコードを提供しません。質問に答えるお手伝いをします。


これは、あなたが達成しようとしていることを支援するための私の答えです.

strpos()を見てください。探していたものが見つからない場合は false を返します。これで、IF ステートメントを作成できます。

false が返されなかった場合は、ループを実行します。置換に関しては、str_replace()をご覧ください。strlen()を使用して、ケースに役立つ合計文字数を調べることもできます。


繰り返しますが、この ^ は、目標を達成するための簡単な後押しに過ぎません。コードを要求しないように、私のアドバイスに従っていただければ幸いです。

また: グーグル検索をしてみませんか? あなたが達成しようとしていることは、誰かがすでにやっていると確信しています。

于 2012-09-16T18:42:59.157 に答える
0

正規表現グループを使用したいようです。

preg_replace('/^- (.*)$/m', '<li> \1 </li>', $string);

ここで正規表現の末尾にある「m」は、「^」および「$」メタ文字が行の先頭と末尾に一致することを保証します。パターンの括弧で囲まれた部分は、後で置換文字列で使用できるように、一致するテキストをキャプチャします。この場合、'\1' は、パターン内の最初の括弧によって開始されるグループ化を参照します。

于 2012-09-16T19:06:41.077 に答える