2016-06-10 61 views
1

在将内容保存到数据库之前,我正在做一些html处理。当用户粘贴任何有html表格的内容时,我需要删除一些标签和属性。使用正则表达式去除表格内的宽度标记

我通过content.match('<table[^>]*>(.*?)</table>')提取表格内容。在这个内容中,它具有宽度标签作为属性以及样式标签。 <table width="462" style="border-collapse: collapse; width: 348pt;">

我想拥有像<table style="border-collapse: collapse;">这样的内容。我不想删除trtd中的宽度属性和标记。任何人都可以建议一个适当的正则表达式模式来做到这一点?

回答

0

只要你管理本身得到<table...>令牌,下面的正则表达式应该匹配所有width属性不是减号前面:

/(?:[^\w-])width\s*(=\s*(["'])[^"']+\2\s*|:\s*[^;]+;)/g 

很显然你应该更换一个空格匹配的内容。