Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >当HTML可能格式错误时,替换所有实例的特定标记

当HTML可能格式错误时,替换所有实例的特定标记
EN

Stack Overflow用户
提问于 2013-02-07 10:29:48
回答 1查看 322关注 0票数 1

我们正在尝试编写一个脚本,用它们的内容替换过时的标签,比如<font>。我们所拥有的大致是这样的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
while($("font").length > 0) {
    $("font").each(function() {
        $(this).replaceWith($(this).html());
    });
}

while循环只是因为如果一个font标签被替换为它的内容,并且其中一个元素的子元素也是一个font标签,那么它就同时捕获了父元素和子元素。

我们的问题是,我们无法控制输出的内容-这是由我们的客户输入的。我们最近看到的格式错误的超文本标记语言的一个例子是<p><font><span><font><div></font><strong></strong><strong></div></span></font></p>。显然,这在很大程度上是错误的,在理想情况下,我们的客户应该正确地输入它。上面的脚本在所有像样的浏览器-- Chrome、Firefox和Safari --以及令人惊讶的IE 9中都能很好地工作。然而,它在IE 6-8中中断了,导致这些标签中的任何内容都不会被显示。我们的目标是替换所有的字体标签,并且仍然显示其中的内容。

有没有人知道用jQuery或经典的ASP能达到预期效果的方法?

还要注意的是,在这种特定的客户端情况下,这是非常基本的-只有1个标签被请求替换。其他情况包括从Word将文本传输到网站、<i><b><span>等时由Word添加的标签。

提前谢谢,致敬,理查德

EN

回答 1

Stack Overflow用户

发布于 2013-02-11 10:20:30

在给定的情况下,这仍然不能提供验证XHTML代码(在内部,未关闭),但可能足以查看文本。

下面是如何使用regexp在经典ASP中执行此操作:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function removeFontTags(s_text)
    dim obj_regex
    set obj_regex = new RegExp

    obj_regex.IgnoreCase = true
    obj_regex.Global = true
    obj_regex.Pattern = "\<\/?font\>"

    removeFontTags = obj_regex.replace(s_text, "")

    set obj_regex = Nothing
end function

Response.Write removeFontTags("<p><font><span><font><div></font><strong></strong><strong></div></span></font></p>")

' returns: <p><span><div><strong></strong><strong></div></span></p>

但也许您可以通过这种方式添加更多的卫生设施,以显示您需要的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14748871

复制
相关文章
HTML中的标记
文章目录 前言 块级元素 行内元素 行内块级元素 ---- 前言 HTML中的标记 块级元素 h1-h6>>1-6级标题 p>>段落 div>>定义文档中的节 ul>>定义无序列表 ol>>定义有序列表 li>>定义无序列表与有序列表中的项 hr>>水平线 address>>定义文档作者或拥有者的联系信息 blockquote>>定义长的引用 pre>>定义预格式文本 form>>定义表单 fieldset>>定义围绕表单中元素的边框 legend>>定义 fieldset 元素的
MIKE笔记
2023/03/23
5.6K0
HTML布局标记和列表标记
首先要介绍的布局标记是div标记,div可以做网页的层也可以做网页的分区。当div做网页的层时可以实现漂浮在网页上的效果,就像我们经常可以在网站里看见的那些漂浮广告。div做网页的分区时,则是可以布置网页的格局,把一个网页分为多个模块,由这些模块结构来构建出一个网页。
端碗吹水
2020/09/23
4.2K0
HTML布局标记和列表标记
HTML多媒体标记与框架标记
在html中可以使用多媒体标记来在网页上播放音频文件,或者显示一些好看的图片用来装饰网页。Flash文件也可以通过相应的标记显示在网页上,<video>标签是用于在网页上播放视频文件的。
端碗吹水
2020/09/23
3K0
HTML多媒体标记与框架标记
不止基因编辑,当所有技术都可能成为毒药
基因技术、纳米技术、机器人技术的新潘多拉之盒即将开启,你我却毫无查觉。我们不单受到大规模杀伤性武器的威胁,还有技术知识产生的大规模杀伤力。这一邪恶的力量,正由国家力量支持的大规模杀伤性武器,转向极端的个人。 ——Bill Joy,BSD操作系统,Vi编辑器,Sparc微处理器设计者,Sun联合创始人及前首席科学家
区块链大本营
2018/12/20
3920
不止基因编辑,当所有技术都可能成为毒药
HTML标记之a标签
   1.内部链接(当前文档与目标文档在同一站点内)<a href=”目标文档位置及全称”></a>;    2.外部链接(当前文档与目标文档不在同一站点内)<a href=”URL(网址)”></a>;    3.E-mail链接(并允许访问者向指定的地址发送邮件)<a href=”mailto:电子邮件地址”></a>;    4.锚点连接 跳转到同一网页或其他文档的指定位置:创建锚点,<a name=”锚点名称”>显示内容</a>链接锚点,<a href=”(URL)#锚点名称”>显示内容</a>;    5.空链接,就是没有目标端点的链接,<a href=”#”>显示内容</a>;    6.脚本链接:是一种特殊的链接,当单击设置脚本链接的文本或图像时,可以运行相应的JS语句。
阿豪聊干货
2018/08/09
2.4K0
HTML单双标记
HTML标记的类型:单标记与双标记 一.单标记 (1).<标记名称> 单一型,无属性值。 如:<br/> 在xhtml中,规定,所有HTML标记,都要小写,所有的标记都要有关闭。 (2).<标记名称 属性="属性值"> 单一型,有属性值。 如:<hr width="80%"/> 二.双标记 (3).<标记名称>...</标记名称> 没有属性值。 如:<title>...</title> (4).<标记名称 属性=”属性值“>...</标记名称> 有属性。 如:<font color="pink">...</
十月梦想
2018/08/29
2.1K0
替换HTML代码
将一些HTML替换掉eg:strContent=strContent.Replace(&,&a
Java架构师必看
2020/07/21
5.1K0
html常用标签标记
本博客所有文章如无特别注明均为原创。作者:十月梦想 ,复制或转载请以超链接形式注明转自 十月梦想博客 。 原文地址《html常用标签标记》
十月梦想
2018/08/29
1.6K0
HTML标记语法总结
         语法:<标记名>…标记内容…</标记名>,如:<a>这是百度的主页</a>
阿豪聊干货
2018/08/09
2K0
Rest API: Json参数格式错误时显示Json原文
一开始想寻找其他方式,当抛出异常的时候,就从HttpServletRequest读取body内容。但是做不到,因为在做Json读取的时候,InputStream已经被读取了,无法再次获取到body内容。所以只能通过自定义MessageConverter的方式。
十毛
2019/03/27
1.9K0
LeetCode - 所有可能的路径
我又重新开始更新LeetCode了,以后工作日更新LeetCode,周末更新东野圭吾的小说
晓痴
2019/07/24
7490
LeetCode - 所有可能的路径
在 Visual Studio 中设置当发生某个特定异常或所有异常时中断
当使用 Visual Studio 调试的时候,如果我们的代码中出现了异常,那么 Visual Studio 会让我们的程序中断,然后我们就能知道程序中出现了异常。但是,如果这个异常已经被 catch 了,那么默认情况下 Visual Studio 是不会帮我们中断的。
walterlv
2023/10/22
1.6K0
在 Visual Studio 中设置当发生某个特定异常或所有异常时中断
python | glob 识别特定格式的文件
在做kaggle的猫狗识别的比赛时,要对图片来分区是猫还是狗,glob包起了很大的作用。下面来用例子说明:
努力在北京混出人样
2019/02/18
1.5K0
js获取当前时间(特定的时间格式)[通俗易懂]
在一个程序中需要对用户的操作进行记录,记录其操作信息,需要对操作进行归类, 有时候用户的操作是重复性的操作,那对于重复的操作,也是要区分的,方便查找, 可以通过设置类似GUID的唯一值,也可以获取当前的操作时间来区分,因为时间也是唯一的, 在任何时候时间都不会出现重复,当然可以获取就可以设置,所以您也可以人为的去设置/修改操作时间。 但是这样不好。
全栈程序员站长
2022/09/29
15.1K0
js获取当前时间(特定的时间格式)[通俗易懂]
HTML5基本标记
JaneYork
2023/10/11
1550
HTML标记之Form表单
从访问的Web站点的用户那里获得信息。访问者可以使用诸如文本域、列表框、复选框以及单选按钮之类的表单元素输入信息,然后单击某个按钮提交这些信息。是客户端与服务器端的交流途径。
阿豪聊干货
2018/08/09
2.5K0
[C#]获得WindowsForm上所有特定类型的控件
本文为原创文章,介绍了如何通过C#获得WindowsForm上所有特定类型的控件。首先,定义一个泛型方法ChildControls,该方法接受一个Control类型的参数control,并返回一个IEnumerable<TControl>类型的结果。然后,在泛型方法中,使用OfType方法筛选出control的子控件,并利用SelectMany方法将子控件中的每个元素再次递归调用ChildControls方法,最终得到所有特定类型的控件。该方法可以用于获取WindowsForm上所有特定类型的控件,包括子控件和布局控件等。","author":"无", "source":"C#
CNXY
2017/12/25
1.5K0
[C#]获得WindowsForm上所有特定类型的控件
Nginx日志分析——用sed彩色标记特定内容
说明:echo打印彩色字符时,使用八进制符号\033,但是在sed中不支持八进制,必须使用16进制:\x1b
星哥玩云
2022/07/04
3530
Nginx日志分析——用sed彩色标记特定内容
HTML一些标记的认识
在HTML5中主要的特性之一就是减少网页对Flash的依赖,很多视频网站和网页游戏都依赖着Flash来运行,很多时候会发现,没有安装Flash就无法打开一些网页,运行Flash对浏览器压力比较大,使用HTML5就可以直接剔除Flash直接通过HTML5来播放视频或者运行网页游戏,这样可以很大程度减轻对浏览器的压力,并且网站开发人员维护起来也要方便得多。虽然HTML5出来有一段时间了,但是国内普遍还是使用着Flash,在国外的网站大部分都已经转用了HTML5,例如YouTube视频网站。
端碗吹水
2020/09/23
1.7K0
HTML一些标记的认识
点击加载更多

相似问题

替换特定HTML元素/标记内的字符的所有实例

21

替换HTML标记中给定字符串的所有实例

11

替换html元素的所有实例

61

替换HTML中的所有<a>标记

45

preg_match_all在格式错误时抓取HTML标记中的所有内容

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文