javascript - 查找非指定字符的索引

标签 javascript

假设我有一个字符串

thisIsThisTuesday Day

我想找到所有大写字母的索引,测试它前面是否有空格,如果没有就插入一个。我需要每一个的索引。 至少从我看来 indexOf(String) 只会产生字符 T/t 第一次出现的索引

这个:

for(i=0;i<str.length;i++){
  let char=str[i];

  if(isNaN(char*1)&&char==char.toUpperCase()){
    y=str.indexOf(char);
    console.log(char,y)
  }
}

将生成大写字母及其索引,但仅显示相关字符的第一次出现。我非常有信心我缺少的部分是 for() 循环,以便移动索引迭代..但它逃脱了我。

提前谢谢您!

最佳答案

您可以使用正则表达式:

它匹配任何后跟大写字母的非空白字符,并将其替换为中间有空格的两个字符。

const str = "thisIsThisTuesday Day";
const newstr = str.replace(/([^ ])([A-Z])/g, "$1 $2");
console.log(newstr);

关于javascript - 查找非指定字符的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53704428/

相关文章:

Javascript - 字符串到坐标数组

javascript - 消除桌面和移动网页上重复的标题标签 <h1>

javascript - 如何创建一个带有提交按钮的文本框,该按钮在单击时使用 js 或 jQuery 执行回调到 javascript 函数?

javascript - React Native IOS 生产版本 : RCTFatalException crash and SocketProtocolError YellowBox

javascript - 使用 ES6/Harmony 以 FP 方式创建具有相同值和键的映射

javascript - 我如何将 cookie 添加到我的弹出表单?仅使用 css 和 html 构建

javascript - 使用 promise /构造 promise 链时,如何设计/集成错误处理?

javascript - Angular 服务给出 "TypeError: Cannot read property ' helloConsole' 未定义”

javascript - 将行移动到新工作表中不同列的脚本

javascript - document.getElementById() 始终返回 null