0

英数字のユーザー名に変換する必要がある名前のリストがあります。私がしたいのは、名前を取得し、英数字以外の値を削除して、文字が削除されたタイトルケースに変換することです。例えば:

 johnson -> Johnson
 Van Halen -> VanHalen
 Torres-hernandez -> TorresHernandez
 Rafael van der vaart -> RafaelVanDerVaart

これは正規表現で行うことができますか?

4

3 に答える 3

3

文字列操作を使用すると、これをかなり簡単に行うことができます。

var name = "Torres-hernandez", i, part, out = "";
parts = name.split(/[^a-z0-9]+/gi);
for (i=0; part = parts[i++];) {
    out += part[0].toUpperCase() + part.slice(1).toLowerCase();
}
于 2013-08-07T08:20:53.480 に答える