【问题标题】:How to match PHP tags with Regex? [closed]如何将 PHP 标签与正则表达式匹配? [关闭]
【发布时间】:2013-12-01 18:08:26
【问题描述】:

我不太擅长正则表达式,

你能给我一个匹配任何 php 标签的模式吗? [<?,<?php]

如果你有一个简单的正则表达式指南,我也很乐意拥有它:)

我已经试过了:

'/^(<\?)$/'

但这并没有真正的帮助=/

谢谢!

【问题讨论】:

  • 你知道^$ 做什么吗?它们不是每个正则表达式都应该使用的装饰器。
  • 通过匹配php标签是什么意思?仅匹配 &lt;?php&lt;?
  • 我猜是
  • str_replace 在没有正则表达式的情况下会做得很好(尽可能避免正则表达式)
  • 提防the X/Y Problem:你真正想要解决的问题是什么?如果你想避免人们通过表单注入 PHP 代码,那么这几乎肯定不是你应该做的。

标签: php regex preg-match expression


【解决方案1】:

你需要 preg_match_all 来匹配标签,复数。下面将匹配PHP块并存储代码。

preg_match_all( '/<\?php(.+?)\?>/is', $php, $blocks );
print_r( $blocks );

如果您的代码中碰巧有字符串 '?>' 没有作为 PHP 结束标记出现,则存在一个问题。需要更多地了解您的文件以提供建议。

【讨论】:

  • )) ??? $文本 = ' $文本 = " ?> "; '; ?>
猜你喜欢
  • 2015-02-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-15
  • 1970-01-01
相关资源
最近更新 更多