Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript函数:在函数的输入Str中,将第一个字母和u后面的所有字母大写_Javascript_Regex_String_Function_Uppercase - Fatal编程技术网

JavaScript函数:在函数的输入Str中,将第一个字母和u后面的所有字母大写

JavaScript函数:在函数的输入Str中,将第一个字母和u后面的所有字母大写,javascript,regex,string,function,uppercase,Javascript,Regex,String,Function,Uppercase,假设我有一个接受字符串输入的函数 字符串输入如下所示:“首次运行” 下面是我的代码 function changeInput (str) { // your code here return str[0].toUpperCase()+id.slice(1) } 当我希望上面的代码返回第一次运行时,它返回第一次运行 我做错了什么 您可以这样使用您的函数。它将您的输入拆分为。,将每个输入的第一个字母大写,然后重新加入: var input=“首次运行”; 功能变更CAP(str){ //

假设我有一个接受字符串输入的函数

字符串输入如下所示:“首次运行”

下面是我的代码

function changeInput (str) {
  // your code here
  return str[0].toUpperCase()+id.slice(1)
}
当我希望上面的代码返回第一次运行时,它返回第一次运行


我做错了什么

您可以这样使用您的函数。它将您的输入拆分为
,将每个输入的第一个字母大写,然后重新加入:

var input=“首次运行”;
功能变更CAP(str){
//你的代码在这里
返回str[0].toUpperCase()+str.slice(1)
}
函数更改输入(str){
返回str.split(“”).map((val)=>changeCap(val)).join(“”);
}

console.log(changeInput(input))
考虑以下扩展示例:

  • 由于您需要将多个字符大写,因此我们需要遍历所有字符
  • 我们可以用循环重新构造字符串,并使用标志指示下一个字符是否应为大写
  • 根据您的示例,我们需要检测的特殊字符是下划线
  • 结果将是
    大写字母后的所有字符
  • 函数更改输入(str){
    var newStr='';
    //大写默认为第一个字母
    var upperCaseNext=true;
    //循环以逐字母重建输入字符串
    对于(变量i=0;ilog(test,'=>',changeInput(test))
    不使用regex如何(因为您没有特别提到您只想使用regex):


    我在手机上输入了这个,所以很难格式化代码。

    您还可以使用for循环遍历代码,并使用if条件,如果第一个字母是小写的,则只将其大写

    这里的关键是显示哪种类型的字符将要大写的数组中的字符拆分,然后将这些字符重新连接到由同一下划线字符分隔的字符串中

    let result = "first_time_run";
    
    function makeFirstUpper(result1) {
      let newValue = result1.split('_');
    
      for(let i = 0; i < newValue.length; i++){
        if(newValue[i].charAt(0) == newValue[i].charAt(0).toLowerCase()){
        newValue[i] = newValue[i].charAt(0).toUpperCase() + newValue[i].substring(1);
        }
      }
      return newValue.join('_');
    }
    
    console.log(makeFirstUpper(result));
    
    让result=“第一次运行”;
    函数makeFirstUpper(结果1){
    设newValue=result1.split(“”);
    for(设i=0;i
    您忘了为
    条件下的所有字母编码,这里是在黑暗中拍摄的,但是如果您试图在页面上显示内容,我只会使用
    文本转换
    css。不知道你在这里是不是在做这些;在第二个例子中,什么是(1)?这是一个字母吗?它是字母“l”而不是1,它只是变量名,代表字符串的第一个字母,或者在正则表达式中捕获的
    \uu
    之后。
    (l)
    是箭头的开头<至少在这种情况下,code>(l)=>…
    相当于
    函数(l){…}
    。有关更多信息,请参阅
    let result = "first_time_run";
    
    function makeFirstUpper(result1) {
      let newValue = result1.split('_');
    
      for(let i = 0; i < newValue.length; i++){
        if(newValue[i].charAt(0) == newValue[i].charAt(0).toLowerCase()){
        newValue[i] = newValue[i].charAt(0).toUpperCase() + newValue[i].substring(1);
        }
      }
      return newValue.join('_');
    }
    
    console.log(makeFirstUpper(result));