使用正则表达式进行解析

发布于 2024-11-15 11:31:22 字数 890 浏览 3 评论 0原文

我有一些文本,例如

some text [http://abc.com/a.jpg] here will be long text 

can be multiple line breaks again [http://a.com/a.jpg] here will be other text

blah blah

“我需要转换为

<div>some text</div><img src="http://abc.com/a.jpg"/><div>here will be long text 

can be multiple line breaks again</div><img src="http://a.com/a.jpg"/><div>here will be other text

blah blah</div>

”要获取 标签,我将 \[(.*?)\] 替换为 < ;img src="$1"/>,导致

some text<img src="http://abc.com/a.jpg"/>here will be long text 

can be multiple enters again<img src="http://a.com/a.jpg"/>here will be other text

blah blah

然而,我不知道如何将文本包装在

中。

我在 iPhone 上使用 RegexKitLite 完成所有操作

I have some text like

some text [http://abc.com/a.jpg] here will be long text 

can be multiple line breaks again [http://a.com/a.jpg] here will be other text

blah blah

Which I need to transform into

<div>some text</div><img src="http://abc.com/a.jpg"/><div>here will be long text 

can be multiple line breaks again</div><img src="http://a.com/a.jpg"/><div>here will be other text

blah blah</div>

To get the <img> tags, I replaced \[(.*?)\] with <img src="$1"/>, resulting in

some text<img src="http://abc.com/a.jpg"/>here will be long text 

can be multiple enters again<img src="http://a.com/a.jpg"/>here will be other text

blah blah

However, I have no idea how to wrap the text in a <div>.

I'm doing everything on the iPhone with RegexKitLite

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

醉城メ夜风 2024-11-22 11:31:22

最简单的方法如下:

  1. 将所有出现的 \[(.*?)\] 替换为
    < /code>

  2. 前置一个
  3. 附加一个

这确实有一个极端情况,结果以以下形式开始或结束

,但这可能并不重要。

如果是,则:

  1. 将所有出现的 \](.*?)\[ 替换为 ]
    $1

    [

  2. 替换所有出现的\[(.*?)\]

Here's the simplest approach:

  1. Replace all occurrences of \[(.*?)\] with </div><img src="$1"/><div>
  2. Prepend a <div>
  3. Append a </div>

That does have a corner case where the result starts or ends with <div></div>, but this probably doesn't matter.

If it does, then:

  1. Replace all occurrences of \](.*?)\[ with ]<div>$1</div>[
  2. Replace all occurrences of \[(.*?)\] with <img src="$1"/>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文