jQueryオートコンプリート プラグインを使用してメンションを実装した Rails アプリケーションに取り組んでいます。
これは、更新が送信されたときのメンションを含む文字列の例です。
-> こんにちは、 Kenneth Auchenberg さん、お久しぶりです。ピート・レイシーに明日会うと伝えて
サーバー側では、文字列を次のように受け取ります。
-> こんにちは @[Kenneth Auchenberg](user:1) お久しぶりです。@[ピート・レイシー](user:6) 明日彼に会うと伝える
この文字列を処理した後、角括弧内のユーザー名とセミコロンの後のユーザー ID、つまりkenneth Auchenberg
、彼の IDを取得し1
、 and をプロファイルへのリンクに置き換え@[Kenneth Auchenberg](user:1)
、@[Pete Lacey](user:6)
不要な@
,[]
を削除し()
て、結果の文字列が署名されるようにします。次のようなことができます
-> こんにちは、 Kenneth Auchenberg さん 、お久しぶりです。ピート・レイシーに明日会うと伝えて
これまでのところ、角かっこ内のユーザー名を取得するだけです。
string.scan(/\[([^\]]*)\]/)
それは私に与えます:
[["Kenneth Auchenberg"], ["Pete Lacey "]]
gsub
Ruby のおよび関数については知ってscan
いますが、目的の結果を得ることができません。私はまだRuby正規表現を使用する初心者です。これを行う最善の方法は何ですか?