正则表达式的一些问题

时间:2010-06-17 09:33:46

标签: php regex

您好我的网站中的所有用户都可以使用表格格式插入数据。那张桌子可以是任何风格。但是我正在使用正则表达式为这些表格提供我们网站的标准格式。但是当我使用正则表达式时,它运行良好,但它正在删除colspan。但我需要colspan widout它表看起来很奇怪。 谁会请我告诉我我的正则表达式错误? 以下是我的正则表达式代码:

$table=eregi_replace("<table[^>]*>","<table  width='100%' border='0' cellspacing='0' cellpadding='0' class='tabularData'>", $table);
$table= preg_replace('/style\s*=\s*(\'|").+(\'|")/i', '', $table);
$table= preg_replace('/bgcolor\s*=\s*(\'|").+(\'|")/i', '', $table);
$table=eregi_replace("<span[^>]*>","",$table);

提前感谢:)

2 个答案:

答案 0 :(得分:1)

您可以使用Javascript轻松设置表格样式。实际上你应该。如果用户计算出你的正则表达式(并且如果你没有正确实现它;可能就是这种情况),那么在用户代码上运行这样的正则表达式会导致安全性问题。

// jquery table styling example (picks up all tables)
$('table').css({
    'width': '100%',
    'background-color': '#F00'
});

希望它有所帮助!

答案 1 :(得分:1)

不要使用正则表达式,不需要这样做。 使用DOM来解析此问题。