【问题标题】:If contains operators in AMPscriptIf 包含 AMPscript 中的运算符
【发布时间】:2021-02-28 16:10:21
【问题描述】:
在我的时事通讯的顶部,我带来了称呼和姓氏信息,但我不想直接在称呼中显示值。我在 Amscript 下使用过,但显然它只检查第一个值,然后无论如何都会带来“mevrouw”。
Geachte %%[ IF [Salutation] == 'De weledelgeleerde heer'
OR 'De weledelzeergeleerde heer'
OR 'De hooggeleerde heer' THEN ]%% heer
%%[ ELSE ]%% mevrouw %%[ ENDIF ]%% %%Last Name%%,
我们能不能把这段代码改成这样:
如果称呼包含“heer”,则带“heer”,否则带“mevrouw”
谢谢。
【问题讨论】:
标签:
if-statement
contains
exacttarget
ampscript
【解决方案1】:
我建议使用indexOf AMPscript 函数。我还会使用一个 init 块来防御性地检查您的原始个性化字符串。
%%[
var @Salutation
var @lastName
set @Salutation = AttributeValue("Salutation")
set @lastName = AttributeValue("Last Name")
set @lastName = properCase(@lastName)
]%%
Geachte
%%[ IF indexOf(@Salutation,'heer') > 0 then ]%%
heer
%%[ ELSE ]%%
mevrouw
%%[ ENDIF ]%% %%=v(@lastName)=%%,
或内联:
%%[
var @Salutation
var @lastName
set @Salutation = AttributeValue("Salutation")
set @lastName = AttributeValue("Last Name")
set @lastName = properCase(@lastName)
]%%
Geachte %%=iif(indexOf(@Salutation,'heer') > 0,"heer","mevrouw")=%% %%=v(@lastName)=%%,