gpt4 book ai didi

javascript - 用于删除行尾空格模式的正则表达式

转载 作者:行者123 更新时间:2023-11-28 19:27:09 25 4
gpt4 key购买 nike

我有一个网站更新程序,可以将每个 p 元素转换为文本区域,用户输入内容,然后每个文本区域被转换回 p 并获取结果HTML 并将其存储在我的 SQL 数据库中。

我的问题:在 Internet Explorer 中,当我去抓回 HTML 时,它稍微改变了 html。例如:

// From this originally
<img id="headingpic"/><div id="myContent">

// To this
<img id="headingpic"/>
<div id="myContent">

这很重要,因为现在显示的 img 和下面的 div 之间有一个垂直间隙。

有时 IE 会插入一个“\n”,有时是一个“\n”,有时只是一个“\n”。我试图想出一个正则表达式来删除这些端线(和间距),无论它们的模式如何。我很难想出正则表达式,它们对我来说太神秘了。

如果我解释我的算法,你能建议在正则表达式中实现这个的“字符”吗?

  • 对于每个“>”字符:如果下一个字符是“<”则忽略任何空白字符或末尾字符,然后继续
  • 对于“<”后面的每个字符,如果不是==“>”,则将其删除(或将其替换为“”)

我正在尝试在 javascript 或 python 中执行此操作:

# Python: should I use replace for this? Would my regular expression look something like this?
HTML_CONTENT.replace( "^[ \t\n\r]" ) # this removes all whitespace as far as I know

最佳答案

我会用不同的方式来解决这个问题:

首先按行溢出。

html_content_list = HTML_CONTENT.split("\n"); // Split by line;

然后使用 .trim() 删除末尾的所有空格(假设我们正在谈论字符串和一行,首先测试是否为 null)

for(var i in html_content_list)
{
html_content_list[i] = html_content_list[i].trim();
}

然后如果确实需要换行,则在末尾添加它:

html_content_list.join("\n");

关于javascript - 用于删除行尾空格模式的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7641664/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com