2009-07-16 15 views
0

私は実際に最も一般的な方法と同じように実装についてはあまり心配していません。私たちのユーザーはあまり技術的ではありませんので、正確に指示に従わないたくさんのタグを取得します。私はむしろそれを自分自身にしようとするよりも、より大きな基準に順応したいと思います。タグの文字列を爆発させる最も一般的な方法は何ですか?

異なるメソッドを許可するか、「、」のような1つの区切り文字だけを受け入れるべきですか?

極端な例文字列は次のようになります。

犬、bad_mojo +ヘルプミー "が誰?" ,,あくび、赤い靴

おいしいが、これらのタグの中に、その文字列を回す:

  • bad_mojo
  • +
  • ヘルプミー
  • あくび、
  • "が
  • です?"かなりスマートなようだが、あなたは役に立たないジャンクがそこに取得することができますどのように見ることができます
  • 赤い靴

+0

私はこのメソッドを使用してPHPでタグを分解しています: preg_split( '/ [\ s、\ +] /'、$ string、NULL、PREG_SPLIT_NO_EMPTY) – thrashr888

答えて

1

私はbad_mojo +ヘルプ-meが,,あくび、犬を分割するだろう、タグに赤い靴 "があります誰が?":

  • 悪いモジョ
  • は私に
  • あくびを助けます
  • 誰がいる?
  • 赤い靴

私はC++で+を受け入れるだろうが、私は任意の単一文字タグを受け入れないでしょう。

あなたはSO-形式のタグを使用する場合は、これらを処理することができます:

  • 悪いモジョ
  • ヘルプミー
  • 玉葉-そこ
  • をあくび
  • 赤い靴

メカニカルタークは、すべてのタグを整理するのに適しているようです。

0

本当にあなた次第です。良い解決策はたくさんあります。区切り文字としてスペースまたはシンボルを使用できます。私はピックアップし、どのようにそれらを行う必要があることがユーザーには明らかであることを確認することをお勧めします。

スペースを使用する場合は、ユーザーがハイフンなどを使用して単語を結合することを確認する必要があります。また、引用符を使用できるようにして複数の単語のタグを許可することもできます。

タグを複数の単語にすることができるかどうか決めるのであれば、どんなタイプのセパレータも許可するわけではありませんが、あなたの状況に適した選択をすることができます。

関連する問題