我有一些文字内容
atxtCtnt = "Helow Hay How Are You"
如果 Hay 存在,我需要删除 Hay你好吗
我是这样做的:
var atxtCtnt = "Helow Hay How Are You",
txt = atxtCtnt.substring(atxtCtnt.indexOf("Hay"));
atxtCtnt = atxtCtnt.replace(txt , "");
alert(atxtCtnt );
如果没有RegExp,请以更好的方式帮助我
答案 0 :(得分:4)
如果你不想使用Regex ...... 我认为这会使你的代码更短一些
a = atxtCtnt.indexOf('Hay');
atxtCtnt = a >=0?atxtCtnt.substring(0,a):atxtCtnt;
答案 1 :(得分:4)
您需要从0到索引的子字符串。但仅当索引大于0时(文本中存在术语“Hay”)。喜欢这个
var atxtCtnt = "Helow Hay How Are You";
var index = atxtCtnt.indexOf("Hay");
var newText = (index < 0) ? atxtCtnt : atxtCtnt.substring(0, index);
alert(newText);
答案 2 :(得分:2)
这应该有效:
atxtCtnt = atxtCtnt.substring(0, atxtCtnt.indexOf("Hay"));
修改:要考虑Hay
是否存在:
atxtCtnt = atxtCtnt.substring(0, atxtCtnt.indexOf("Hay") === -1 ? atxtCtnt.length : atxtCtnt.indexOf("Hay"));
答案 3 :(得分:2)
我不确定这是否比使用子串更好的解决方案,但你也可以试试这个:
atxtCtnt.split('Hay')[0]
您可以删除&#34; Helow&#34;结尾处的空格。像这样:
atxtCtnt.split('Hay')[0].trim()
答案 4 :(得分:2)
var word = "Hay";
var a = "Helow Hay How Are You";
var b = a.split(word); // now you have two parts b[0] = Helow and b[1] = How Are You
document.body.innerHTML=b[0];
答案 5 :(得分:2)
这就是我所做的
var atxtCtnt = "Helow Hay How Are You",
txt = atxtCtnt.substring(0, atxtCtnt.indexOf("Hay"));
alert(txt );
谢谢你的回答:)