Javascript 当我不使用';我不知道他们的立场
我有以下案文:Javascript 当我不使用';我不知道他们的立场,javascript,string,indexing,Javascript,String,Indexing,我有以下案文: Blah Blah Blah SPECIAL TEXT: PART OF IT blah bah SPECIAL TEXT: STILL PART OF IT blah blah blah blah 如何使用JavaScript获得此结果: Blah Blah Blah blah bah blah blah blah blah 如何删除大写字母的文本 请注意“:”之后和换行之前的部分不是大写的,而是文本的一部分,所以我不能说删除所有大写的文本 还要注意的是,我不知道要删除的文
Blah Blah Blah SPECIAL TEXT: PART OF IT
blah bah SPECIAL TEXT: STILL PART OF IT
blah blah blah blah
如何使用JavaScript获得此结果:
Blah Blah Blah
blah bah
blah blah blah blah
如何删除大写字母的文本
请注意“:”之后和换行之前的部分不是大写的,而是文本的一部分,所以我不能说删除所有大写的文本
还要注意的是,我不知道要删除的文本将从何处开始和结束,我知道的是,当出现几个连续的大写字母并排键入时,文本将从何处开始,当出现换行时,文本将从何处结束
我尝试通过使用search(“SPECIAL”)
获取前几个大写字母的索引,并通过使用search(“\n”)
获取结尾。问题是在“特殊文本”之后换行,而不是其他
最后,如果我得到了位置,包括开始和结束,我想我可以得到两个索引之间的任何字符串,用一个空字符串替换它们,然后迭代这个过程
任何帮助都将不胜感激。
var text=“诸如此类的特殊文本:它的一部分\n诸如此类的特殊文本:仍然是它的一部分\n诸如此类的
var arr=text.split(“\n”);
var newArray=arr.map(函数(项){
if(项目索引(“特殊文本”)!=-1){
返回item.substring(0,item.indexOf(“特殊文本”);
}否则{
退货项目
}
});
text=newArray.join(“\n”);
警报(文本)代码>
var text=“诸如此类的特殊文本:它的一部分\n诸如此类的特殊文本:仍然是它的一部分\n诸如此类的
var arr=text.split(“\n”);
var newArray=arr.map(函数(项){
if(项目索引(“特殊文本”)!=-1){
返回item.substring(0,item.indexOf(“特殊文本”);
}否则{
退货项目
}
});
text=newArray.join(“\n”);
警报(文本)代码>这个正则表达式怎么样
("Blah Blah Blah SPECIAL TEXT: PART OF IT\n" +
"blah bah SPECIAL TEXT: STILL PART OF IT\n" +
"blah blah blah blah").replace(/SPECIAL\sTEXT:.+$/mg,'')
这基本上意味着替换任何以特殊文本开头的字符串片段:
,后跟一些字符(+
),并以行尾($
)结尾。单独检查所有行,而不是一次检查整个字符串(m
),并且在第一次替换(g
)后不要停止(g
)这个正则表达式怎么样
("Blah Blah Blah SPECIAL TEXT: PART OF IT\n" +
"blah bah SPECIAL TEXT: STILL PART OF IT\n" +
"blah blah blah blah").replace(/SPECIAL\sTEXT:.+$/mg,'')
这基本上意味着替换任何以特殊文本开头的字符串片段:
,后跟一些字符(+
),并以行尾($
)结尾。单独检查所有行,而不是一次检查整个字符串(m
),并且在第一次替换后不要停止(g
)尝试正则表达式:
var str=“诸如此类的特殊文本:它的一部分\nblah-bah特殊文本:仍然是它的一部分\nblah-Blah-Blah-Blah-Blah”
log(str.replace(/SPECIAL.*$/gm,'))
/*
废话连篇
废话
废话废话
*/
试试正则表达式:
var str=“诸如此类的特殊文本:它的一部分\nblah-bah特殊文本:仍然是它的一部分\nblah-Blah-Blah-Blah-Blah”
log(str.replace(/SPECIAL.*$/gm,'))
/*
废话连篇
废话
废话废话
*/
尝试使用split(/regex/)
在我回答你的问题之前,告诉我:你想从特殊文本中删除:
到EOL
(行尾)对吗?是的,在行尾后不要松开其他文本和:特殊文本:
字符串“特殊文本:
或一类具有特殊形式的字符串(例如,所有大写字母)尝试使用split(/regex/)
在我回答你的问题之前,告诉我:你想从特殊文本中删除:
到下线(行尾)对吗?是的,行尾后不要松开其他文本和:Is特殊文本:
字符串特殊文本:
或一类具有特殊形式的字符串(例如,所有大写字母)的其他部分如何?它将得到lostSweet。非常感谢其他部分如何?它将得到lostSweet。非常感谢替换()
只替换一个子字符串。但有两个子字符串我真的很喜欢你的方法。简单明了。谢谢。我已经思考了一段时间了。什么样的标记?你的示例中没有任何标记。replace()
只替换了一个子字符串。但是有两个子字符串。我真的很喜欢你的方法。简单而直接。谢谢。我已经思考了一段时间了。什么样的标记?在你的示例中没有任何标记。很好,但它松开了换行符mm,我可以实现和方法,一旦元素与要换行的字符串不相等k行,reduce在这种情况下应该是一个更好的方法很好,但是它松开了换行符shmm,我可以实现和方法,一旦元素不等于要换行的字符串,reduce在这种情况下应该是一个更好的方法