0

play フレームワーク 2.2.1 を使用していますが、ビュー テンプレート内での文字列の操作について質問があります。残念ながら、私は Scala プログラミング言語にもその API にもあまり詳しくありません。文字列は、コントローラーからビューに渡されるリストに含まれており、ループを使用して、html に追加される前に各文字列を処理します。次のことを行う方法を知りたいです:トリム、toLowerCase、およびスペースの削除。例として、「My string」があれば、「mystring」を作成したいと思います。より具体的には、実際には「myString」を作成したいと思っていますが、誰かが私を正しい方向に向ければ、それを理解できると確信しています。ありがとう。

アップデート:

フィアズは彼の答えに基づいて素晴らしい解決策を提供し、興味のために再帰を使用して次の解決策を思いつきました。もちろん、この例では、提供された入力について多くの仮定を行っています。

@formatName(name: String) = @{  
  def inner(list: List[String], first: Boolean): String = {
    if (!list.tail.isEmpty && first) list.head + inner(list.tail, false)
    else if (!list.tail.isEmpty && !first) list.head.capitalize + inner(list.tail, false)
    else if (list.tail.isEmpty && !first) list.head.capitalize
    else list.head                  
  } 
  if (!name.trim.isEmpty) inner(name.split(' ').map(_.toLowerCase).toList, true)        
  else ""
}
4

2 に答える 2