Javascript/regex:删除方括号之间的文本
Javascript/regex: Remove text between square brackets
是否可以更改:
Hello, this is Mike [example]
到此:
Hello, this is Mike
使用JS+Regex?非常感谢。
如果您更喜欢使用正则表达式,请考虑以下内容。
var r = 'Hello, this is Mike [example]'.replace(/ *'[[^']]*]/, '');
console.log(r); //=> "Hello, this is Mike"
如果数据的括号中包含更多要删除的文本,请使用g
(全局)修饰符。
根据你给定的字符串,你可以在这里使用split。
var r = 'Hello, this is Mike [example]'.split(' [')[0]
console.log(r); //=> "Hello, this is Mike"
我的第一个想法是:
"Hello, this is Mike [example]".replace(/('[.+'])/g, '');
JS Fiddle演示。
或者,如评论中所述:
"Hello, this is Mike [example]".replace(/('[.*?'])/g, '');
JS Fiddle演示。
参考文献:
- JavaScript正则表达式
删除空白并不总是可取的,例如,当括号用于某些类型的标记时。替换为单个空间。
text = "This is a [big]large[/big] bear."
text = text.replace(/'s*'[.*?']'s*/g, ' ')
结果:text=";这是一只大熊"
此示例显示删除'<'&'>',使用文本节点函数进行转义,删除div及其内容,最后删除'['&']'。
有关转义字符的完整列表,请参阅:mateam.net
function escapeHTML(html) {
return document.createElement('div').appendChild(document.createTextNode(html)).parentNode.innerHTML;
}
var a = document.createElement('div');
a.id = 'test';
a.innerHTML = 'test';
document.body.appendChild(a);
a.onclick = function(){
var str = '<a href="ggoggle.ca">ggogle</a> wish i was here <img src="image"><div>another div</div> [square brackets] <div>yet another div</div>';
console.log(''n original string:'n'+str);
str = str.replace(/'<div'>.*?'<'/div'>/g,'');
console.log(''n removed divs & content:'n'+str);
// <a href="ggoggle.ca">ggogle</a> wish i was here <img src="image"> [square brackets]
var str = escapeHTML(str);
console.log(''n escape using text node - escapeHTML(html):'n'+str);
// <a href="ggoggle.ca">ggogle</a> wish i was here <img src="image"> [square brackets]
str = str.replace(/'<.*?'>/g,'').replace(/'<.*?'>/g,'');
console.log(''n removed ''< >'' and escaped (< >) and content:'n'+str);
// ggogle wish i was here [square brackets]
str = str.replace(/'[.*?']/g,'')
console.log(''n remove square brackets and their content:'n'+str);
// ggogle wish i was here
}
相关文章:
- 浏览器之间的文本区域更新方式不同
- 有没有一种方法可以从两个标签之间提取文本,并以我选择的格式输出
- 使用javascript获取标记之间的文本
- 谷歌应用程序在两个标签之间编写目标文本
- 使用Javascript,获取元素的方法是什么,基于打开和关闭标记之间的文本
- 如何使用JavaScript Regex替换字符串中双引号之间的文本
- 使用 JavaScript 中的正则表达式替换大文本中两个字符之间的每个出现的字符串
- j查询在多个文本框之间指定
- 在<选项>标签之间切换时保存输入文本
- 文本未在边框之间居中
- 阅读标签之间的文本
- 在jQuery或JavaScript中获取两个字符串之间的文本
- 循环字符串以查找字符集之间的文本
- 如何使用javascript将文本框中的值限制为1-999之间的值范围
- 使用javascript接受1-999之间的值的文本框
- 在javascript中使用regex只选择标记之间的文本
- 获取javascript中以a到Z之间的特定字符开头的第一个文本的位置
- 需要正则表达式使文本在*bold之间
- 如何获取两个容器之间的文本
- 如何获取javascript中两个文本框之间的天数