JavaScript正则表达式解释

JavaScript正则表达式解释,javascript,html,Javascript,Html,我使用下面的正则表达式对文本区域中的任何html标记进行验证, 如果有人在文本区域输入任何html标记,我必须显示验证消息 使用的正则表达式: /<(\w+)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/ /我会像这样执行这种验证: var d = document.createElement('div'); d.innerHTML = 'whatever </p>';

我使用下面的正则表达式对文本区域中的任何html标记进行验证, 如果有人在文本区域输入任何html标记,我必须显示验证消息

使用的正则表达式:

/<(\w+)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/

/我会像这样执行这种验证:

var d = document.createElement('div');
d.innerHTML = 'whatever </p>';

if (d.getElementsByTagName('*').length) {
    alert("You have typed some HTML");
}
var d=document.createElement('div');
d、 innerHTML='whatever

'; if(d.getElementsByTagName('*').length){ 警告(“您键入了一些HTML”); }
请尝试-

Regx限制html标记-

/([\<])([^\>]{1,})*([\>])/i
/([\]{1,})*([\>])/i

/g

好吧,它基本上是尝试匹配开始标记。我应该编辑什么,使正则表达式即使是结束标记也不接受?您只是想限制字符吗?您接受的答案将返回一个匹配的句子,如“If1<2然后55>10”不要忘记在服务器端过滤输入/输出。如果在页面上存储并显示这些数据,仅使用JS进行过滤是不够的。

只是一个例子……我的正则表达式允许所有结束HTML标记……我不想允许,即使字符串只包含结束HTML标记这是一个非常好的主意,它在包含顺序错误的<和>字符的句子中仍然失败。我不确定他能做什么though@magritte你能举一个具体的例子吗?嘿,杰克,当然-我把它放在了问题的评论中,但例如,“如果1<2,那么55>10”,你可以想象他们可能在框中键入了一个句子中涉及数学计算的内容。
/<(.|\n)*?>/g