Javascript:在字符串中,替换大写字母和后面的所有字母

时间:2016-04-17 00:46:48

标签: javascript

我有一堆字符串,dateTable, lastName, redColor我希望删除大写字母和之后的所有字母,例如,删除表格,名称和颜色,只留下日期,最后和红色。任何帮助表示赞赏!

5 个答案:

答案 0 :(得分:0)

迭代这些字母并将它们与正则表达式匹配。然后使用子字符串从第一个大写字母的开头到索引获取字符串。

 var inputString = "What have YOU tried?";
var positions = [];
for(var i=0; i<inputString.length; i++){
if(inputString[i].match(/[A-Z]/) != null){
    positions.push(i);
break;

}
}
alert(positions);


var res = str.substring(1, postions[0]);

res should be the intended string

答案 1 :(得分:0)

可以使用.replace()轻松完成:

"dateTable".replace(/[A-Z].*/, "")

答案 2 :(得分:0)

这是一种提醒您想要的方法 - 您可以从那里继续 检查一下:

if ( myObject instanceof IMyInterface ) then { 
    ... Log Success ... 
} 
else { 
    ... Log Failure ... 
} 

答案 3 :(得分:0)

简单的快速非正则表达式循环,在第一个大写字母处断开。

function strip(str) {
  var i = -1, out = [], len = str.length;
  while (++i < len) {
    if (str.charCodeAt(i) >= 65 && str.charCodeAt(i) <= 90) break;
    out.push(str[i]);
  }
  return out.join('');
}

DEMO

答案 4 :(得分:0)

试试这段代码。没有正则表达式...它应该工作并且非常简单。这是小提琴...... https://fiddle.jshell.net/4ku3srjw/2/

只需替换变量字的字符串,您就会发现它适用于您想要的内容

var word = "lastName";

for (var i = 0; i < word.length; i++) {
  if (word[i] === word[i].toUpperCase()) {
    var choppedWord = word.substr(0, i)
  }   
}
alert(choppedWord);

希望有所帮助