0

私のアプリでは、メンバーが投稿を行うことができます。メンバーが送信する投稿から特定のアイテムを抽出してフォーマットできるようにしたいと考えています。URL、@mentions、#hashtags など (主にそれらをリンクに変換します)。

パフォーマンス上の理由から、投稿を文字列型の列に保つことを目指しています。人々が投稿するだけで物事が自動的に変換される方がいいと思うので、私はMarkdownのようなものを使用したくない. (さらに、依存関係が 1 つ少なくなります。)

ここに私のアイデアのいくつかがあります:

  • 正規表現を使用して各項目を順番に探し、フォーマットされた HTML に置き換えます (この方法の長所と短所は何ですか? 文字列列のサイズ制限が問題になる可能性があると思います)。

  • ユーザーが送信したテキストを独自のカスタム タグに置き換えてから、これをフォーマットして表示します。たとえば、誰かが「Hello @Danny check out this #Ferrari」と投稿すると、@ が のようなものに置き換えられ[u_id=2]、ハッシュタグが表示されてand[t_id=1]に変換されます。これは、ユーザー名が変更された場合でも、リンクが常に正しいことを意味します。しかし、正規表現は作成時と表示時の両方で実行されるため、これは聞き過ごされすぎでしょうか?<a href="site.com/users/danny">@Danny</a><a href="site.com/tags/ferrari">#Ferrari</a>

他に選択肢はありますか? また、最善かつ最も効率的な方法は何でしょうか?

4

0 に答える 0