【问题标题】:Regex to replace similar delimiters of strings正则表达式替换字符串的类似分隔符
【发布时间】:2017-07-24 23:26:40
【问题描述】:

我在 StackOverflow 上查看了各种 Regex 答案,但找不到与我的问题相关的任何内容。

我有一些表单$inline_latex$$$paragraph_latex$$ 的网页文本(实际上是LaTeX),我想分别使用PHP 替换它们

<span class="latex">\color{red}inline_latex</span>

<p class="latex">\color{red}paragraph_latex</p>

即用 span 标签替换 $ 的分隔符,用段落标签替换 $$ 的分隔符。无论$$$ 存在的位置,都会一次替换多个字符串。

我的尝试:我在使用正则表达式时遇到了困难,所以我使用了 str_replace 3 次。第一个将$$ 替换为~,第二个将$ 替换为span,第三个将~ 替换为p 标签。这是粗制滥造的,但它仍然不起作用,因为我没有关闭标签的解决方案。我知道使用 regex / preg_replace 更好。

请帮忙? 这不是家庭作业。我是一名数学老师,设计一个简单的课堂练习网页,我正在学习 PHP。谢谢

【问题讨论】:

    标签: php html regex preg-replace


    【解决方案1】:

    先替换

    \$\$([^$]+)\$\$
    

    <p class="latex">\\color{red}\1</p>
    

    然后替换

    \$([^$]+)\$
    

    <span class="latex">\\color{red}\1</span>
    

    查看演示 12

    【讨论】:

    • 谢谢!我现在正在尝试这个!
    猜你喜欢
    • 1970-01-01
    • 2018-07-13
    • 1970-01-01
    • 2017-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多