Jquery 使用正则表达式从textarea中删除字符串
预期产出:Jquery 使用正则表达式从textarea中删除字符串,jquery,regex,Jquery,Regex,预期产出: var value = $('textarea[name="test"]').val(); value = value.replace(/\[url=(.+?)\](.+?)\[\/url\]/g, ''); value = value.replace(/\[url=(.+?)\]/g, ''); value = value.replace('[url]', ''); value = value.replace('[\/url]', ''); $('textarea[name="te
var value = $('textarea[name="test"]').val();
value = value.replace(/\[url=(.+?)\](.+?)\[\/url\]/g, '');
value = value.replace(/\[url=(.+?)\]/g, '');
value = value.replace('[url]', '');
value = value.replace('[\/url]', '');
$('textarea[name="test"]').val(value);
测试
[img]http://test.com/test.jpg[/img]
测试
这应该能帮你解决问题-只需更换一个正则表达式即可:
<textarea>
test
[img]http://test.com/test.jpg[/img]
test
</textarea>
基本上,正则表达式查找一个以方括号开始的字符串,[
,该字符串后面可能有或可能没有结束符/
,但后面跟着url
,然后它将继续匹配,直到遇到一个]
,也不在乎它发现了什么。这样,您可以获得以下所有项的匹配项:
[url]
[/url]
[url=http://www.google.com]
(如果你真的想要:-P)[url hello world这很好]
textarea
字段的名称从“text”更改为“signature”,但从未发布包含第二个textarea的HTML—我刚才在上面的代码中使用了相同的一个--“test”
希望有帮助
<textarea>
test
[img]http://test.com/test.jpg[/img]
test
</textarea>
var value = $('textarea[name="test"]').val();
value = value.replace(/\[\/?url([^\]]+)?\]/g, '');
$('textarea[name="test"]').val(value);