如果我更多地了解Twig,这不会是一个大问题。 这是我的代码,我正在尝试检查网址中是否包含数字。
{% set x = req.path %}
{% set matches = x|regex_match('~[\d\.]+$~') %}
{% set matches = x|regex_match('~[0-9]*$+~') %}
这些都不起作用
提前致谢
答案 0 :(得分:2)
请参阅Twig reference:
对于复杂的字符串比较,
matches
运算符允许您使用正则表达式:
{% if phone matches '/^[\\d\\.]+$/' %}
{% endif %}
因此,要检查字符串是否包含带正则表达式的数字,只需使用
{% if x matches '/\\d/' %}
Do Stuff
{% endif %}
答案 1 :(得分:-1)
为什么要使用Twig?使用路由功能应该更可靠吗?
my_route_to_check:
pattern: /my/route/{id}
defaults: { _controller: acmeMybundle:myController:myAction, id:0}
requirements:
id : \d+
此处{id}必须是整数(使用\ d +规则),否则将触发异常。
更容易,不是吗?