在JavaScript中转换字符串

时间:2011-04-26 14:19:53

标签: javascript

你会怎么做......?

我正在尝试编写一个字符串转换器,它将字符串中的某些字母大写。

实施例

lorem lipum lampum => lorem Lipum lampum
popud pidem papusek => popud pidem Papusek

谢谢!

2 个答案:

答案 0 :(得分:0)

这应该随机大写每五个字符串:

var s = "lorem lipum lampum";
var a = s.split(" ");
for (var i=0; i < a.length; i++) {
 if (Math.random() > 0.2) {
  a[i] = a[i].charAt(0).toUpperCase() + a[i].substring(1);
  }
 }
s = a.join(" ");

现在您已经澄清了以下内容:

var doIt = function (s, which) {
  var a = s.split(" ");
  a[which] = a[which].charAt(0).toUpperCase() + a[which].substring(1);
  return a.join(" ");
 }

答案 1 :(得分:0)

如果您可以明确设置模式,请使用Regex查找需要大写的部分。如果您使用字典,则状态机模式是最佳的。为了便于编码,最快的是一次运行一个单词并找到适合该模式的单词。如果perf是主要需求,那么增加性能有一些棘手的方法,包括(在极端)使用二进制。