首页 > 解决方案 > 翻译 Twig 匹配的工作正则表达式

问题描述

我有一个无法与 Twig match 一起使用的正则表达式。基本上,我需要确认消息是否包含"@firstname lastname "在任何地方。消息可以有返回、多个匹配等。正则表达式必须匹配整个消息,只要它"@firstname lastname "存在于某处。

这是我在这里工作的正则表达式:https ://regexr.com/

/.+?(?=@)@[A-z]+ [A-z]+ (.*)/gs

它适用于:这是一堆围绕@firstname lastname 等的文本

我尝试了什么:

{%- set action -%}
    Twig needs to handle the set in this format @firstname lastname
    for what I need to work
{%- endset -%}

和:

{% set regex = '/.+?(?=@)@[A-z]+ [A-z]+ (.*)/gs' %}

然后:

{% if action matches regex %}
    Working
{% else %}
    Not working
{% endif %}

我得到的是:Not Working

标签: regextwig

解决方案


lastname和之间没有空格forg也不是有效的修饰符PHP

{% set regex = '/.+?(?=@)@[A-z]+ [A-z]+(.*)/s' %}

演示


推荐阅读