使用大写格式化字符串

时间:2015-11-26 18:56:25

标签: javascript string

我必须格式化一个字符串。所以我希望我的字符串是自动格式的。 例如: 我有这个字符串:

  

“你好,我的名字是迈克尔。你能帮我吗?我有问题”

我希望使用JavaScript,字符串变为:

  

“你好,我的名字是迈克尔。你能帮助我吗?我有问题”

因此,必须检查第一个字母(在本例中为“h”)的函数是大写,如果在点之后有空格(并且在点之后添加空格和首字母大写)并且如果有的话空格检查第一个字母是否大写。

任何人都知道怎么做?

2 个答案:

答案 0 :(得分:4)

您可以将 replace() 与正则表达式一起使用

function formatSentence(sentence) {
  return sentence
    .replace(/^\w/g, function(m) {
      return m.toUpperCase();
    }).replace(/(\.|\?)\s?(\w)/g, function(_, m1, m2) {
      return m1 + ' ' + m2.toUpperCase();
    })
}

document.write(formatSentence("hello, my name is Michael. can you help me?i have a problem"));

答案 1 :(得分:1)

function formatSentence(sentence) {
  return sentence.replace(/^\w/g, function(m) {
    return m.toUpperCase();
  }).replace(/(\.|\?)\s?(\w)/g, function(_, m1, m2) {
    return m1 + ' ' + m2.toUpperCase();
  })
}

var sentence = "hello, my name is Michael. can you help me?i have a problem";
setence = formatSentence(sentence);
document.write(setence);

我不想要任何功劳,但这是Pranvan代码的功能: