dopmgo4707 2017-03-04 23:59
浏览 41
已采纳

正则表达式替换类似的字符串分隔符

I have checked out various Regex answers here on StackOverflow but I can't find anything related to my problem.

I have some webpage text (LaTeX actually) of forms $inline_latex$ and $$paragraph_latex$$ and I want to replace them respectively, using PHP with

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

and

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

i.e. replace the delimiters for $ with span tag, and for $$ with paragraph tag. Multiple strings will be replaced at once, wherever $ and $$ exist.

What I have tried: I was having a hard time with regex so I used str_replace three times. First one replaces $$ with ~, second one replaces $ with span, third one replaces ~ with p tag. This is shoddy but it still doesn't work because I don't have a solution for the close tags. I know using regex / preg_replace is better.

Please help? This is not homework. I am a math instructor designing a simple class exercise webpage, and I am learning PHP. Thanks

  • 写回答

1条回答 默认 最新

  • douou1891 2017-03-05 00:08
    关注

    First replace

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

    with

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

    Then replace

    \$([^$]+)\$
    

    with

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

    See demos 1 and 2

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?