【发布时间】:2012-03-25 17:30:20
【问题描述】:
我正在尝试将 {{name:something}} 等文件中的所有标签替换为某些特定值。
请注意,在{{name::something}} 中,只有某些东西可能会引起注意。喜欢{{name:title}} 或{{name:content}}。那个“名字”将永远存在。
无论如何,
我使用了 preg_match_all 和 preg_replace,一切都解决了。我找到了这个正则表达式的匹配项:$patmatch="/{{name:[a-zA-Z0-9._-]+}}/";
我的问题如下:
当这样的标签与模式不匹配时(它有语法错误),如{{notname:something}} 或{{name something}} 或{{ }} 我必须抛出异常。
我如何知道标签是否存在,但有语法错误?
我能否以某种方式进行另一个模式搜索来检查它是否是一个标签(在{{ 和}} 之间)以及它是否不像{{name:something}}?
任何帮助将不胜感激, 谢谢!
【问题讨论】:
标签: php tags design-patterns match