当前位置: 首页 > 知识库问答 >
问题:

如何替换字符串中的换行符,以便html将其呈现为单独的段落?

乌翰学
2023-03-14

我正在开发一个反应应用程序,我正在使用Firebase来存储我的数据。我在换行符方面遇到了问题。当我向Firebase提交带有多个段落的博客文章时,它会存储带有隐藏换行符的字符串。我说隐藏是因为您无法仅通过在Firebase控制台中查看它们来查看它们,但我知道Firebase确实存储了它们。问题是当文本读回应用程序时,我不确定如何将其显示为多个段落。换行符仍然存在,但html不会将换行符呈现为段落分隔符。

这里有一个例子:

Lorem ipsum dolor sit amet, consecetur adipiscing elit, se do eiusmod temor interdidunt ut labore et dolore magna aliqua. Nibh tellus molestie nunc non布兰迪马萨伊尼姆nec. Viverra nam Libero Justin to laoreet sit. Laoreet id donec ultrices tinterdunt. Tortor的结果porta nibh venenatis cras sedfelis. Ac feugiat sedectus vtibulum mattis ullamcorper天鹅绒sedullamcorper. Imperdidui的积累。Scelerisque fermentum dui faucibus in ornare quam. Proin sagittis nisl rhoncus mattis rhoncus. Dolor sit amet consecetur adipiscing elit piscesque. Orci ac拍卖商augue mauris augue. Id aliket risus feugiat in. Sed id semper risus in hendrerit gravida.我坐在毛里斯公司。门nibh venenatis cras. nisl purus in mollis nunc ed id. Pulvinar sapien et ligula ullamcorper malesuada proin. Sollicitudin aliquam ultrices sagittis orci. at temor commodo ullamcorper a lacus. Tincdunt dui ut ornare lectus坐在最合适的位置。Aliquam malesuada bibenda arcu vitae elementum curabitur vitae nunc。在元素欧盟设施的批发商。Eu mi bibenda neque egestas congue quisque egestas diam in. Sed velissim sodales ut eu sem. Risus ultricies trisques nulla alique enim tortor at. Vel orci porta nonpulvinar neque laoreet悬念。Nunc faucibus a pelldisse

这应该是两段。

我尝试在所有换行符实例上进行查找/替换,将它们替换为

const regex = new RegExp('\\n', 'g');
p.body = p.body.replace(regex, '<br/>');

结果:

Lorem ipsum dolor sit amet,concetetur adipiscing elit,sed do eiusmod tempor inciddunt ut laboure and dolore magna aliqua。Nibh tellus molestie nunc non blandit massa enim nec。Viverra nam libero justo laoreet sit。Laoreet id donec ultrices tincidunt。侵权责任人(Tortor consequeat id porta nibh venenatis cras sed felis)。Ac feugiat sed lectus门廊mattis ullamcorper velit sed ullamcorper。IMPREDITE dui accumsan sit amet公司。奥纳雷码头的Scelerisque fermentum dui faucibus。前矢状体nisl rhoncus mattis rhoncus。多洛·塞特·阿梅特·康塞特图(Dolor sit amet Concetetur)与佩伦特斯(pellentesque)精英告别。奥奇拍卖人奥古斯·莫里斯·奥古斯。我是aliquet risus feugiat。Sed id semper risus在hendrerit孕妇中。我们的生活充满活力。Lorem donec massa sapien faucibus et.Mi sit amet mauris commodo。威尼斯国家港口。Nisl purus in mollis nunc sed id.Pulvinar sapien et ligula ullamcorper malesuada proin。

你能看到那两个吗

很明显,它是按原样呈现文本。

文本中是否有任何类型的字符可以替换为html将该位置的字符串拆分为新段落?谢谢

共有1个答案

许安邦
2023-03-14

我最终解决了这个问题,使用\n作为分隔符拆分字符串。这给了我一系列的段落。然后我将数组转换为<代码>

                    let paragraphCount = 0;
                    const paragraphArray = body.split('\n').filter(p => p !== '').map(p => {
                        paragraphCount++;
                        return <p>
                                {/* Add image to first paragraph */}
                                {paragraphCount === 1 ? <img src={imageUrl} className={imageClass} /> : null}
                                {p}
                            </p>;
                    });
                    const paragraphs = <div className="post-body">{paragraphArray}</div>;
 类似资料:
  • 问题内容: 我正在使用一个喜欢: 我使用的是哪里。这行代码对我不起作用。我想知道自己在做什么错? 问题答案: 尽管看起来可能存在一些语法问题,但是代码看起来或多或少还可以。这是一个工作示例:

  • 问题内容: 问题是需要替换给定字符串中的单个字符,同时保留字符串中的其他字符。 代码是: 问题答案: 您几乎做到了,只需在循环中添加一个计数器即可:

  • 问题内容: 我有一个字符串,该字符串是通过阅读HTML网页获得的,其中包含带有项目符号的项目符号,该项目符号带有“•”之类的符号。请注意,该文本是使用Python 2.7的网页的HTML来源。 我知道项目符号字符的unicode字符为,但是实际上如何用其他东西替换该unicode字符呢? 我试着做 但它似乎不起作用…我该怎么做? 问题答案: 将字符串解码为Unicode。假设它是UTF-8编码的:

  • 问题内容: 我正在从用户那里获得一个物理位置地址,并试图安排它来创建一个URL,该URL以后将用于从Google Geocode API获取JSON响应。 最终的URL字符串结果应与此类似,但不能有空格: http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View

  • 我希望我的程序替换输入字符串中的每个元音。

  • 问题内容: 给定代码行 而且,我需要转换为。如何在这里使用JavaScript替换功能? 问题答案: 像这样做: 更新以反映当前版本的jQuery。而且,这里有很多答案最适合与此相同的情况。作为开发人员,您需要知道哪个。 替换所有事件 要一次替换多个字符,请使用类似以下内容:。在这里,我将所有字符替换为。表示“全球” 注意 -您可能需要添加方括号以避免出现错误- credits vissu and