在将内容保存到数据库之前,我正在进行一些html处理。当用户粘贴任何包含html表的内容时,我需要删除一些标记和属性。
我正在通过content.match('<table[^>]*>(.*?)</table>')
提取表格内容。在此内容中,它具有宽度标记作为属性以及内部样式标记。 <table width="462" style="border-collapse: collapse; width: 348pt;">
。
我想拥有像<table style="border-collapse: collapse;">
这样的内容。我不想删除tr
和td
中的宽度属性和标记。任何人都可以建议一个正确的正则表达式模式来做到这一点吗?
答案 0 :(得分:0)
如果您设法自行获取<table...>
令牌,则以下正则表达式应匹配前面没有减号的所有width
属性:
/(?:[^\w-])width\s*(=\s*(["'])[^"']+\2\s*|:\s*[^;]+;)/g
您显然应该用空格替换匹配的内容。
答案 1 :(得分:-1)
查找:
(<table[^\>]*) width="[^\"]*"
替换为:
\1
说明
(<table : find all '<table'...
[^\>]*) : until first occurrence of a closing lace brace
width="[^\"]*" : find ' width="' until first occurrence of a quotation mark,
select everything, and close it with a quotation mark
欢呼声,政策