Smarty 从字符串中删除最后一个字符,如果它是 '/'
Smarty delete last character from string if it's '/'
我正在尝试从 smarty 变量中获取最后一个字符。
我知道我可以使用 substr
删除最后一个字符,也可以用 replace
替换一个字符。
但我只想删除以 /
结尾的最后一个字符
比如我的字符串是/homepage/
,我想变成/homepage
但是如果我有 /homepage
它应该是 /homepage
编辑:
也适用于字符串 /homepage/?
-> /homepage?
您可以使用 Smarty regex_replace 并匹配到 \
如果它是带有 \/$
的最后一个字符并将其替换为空字符串。
同理可以用regex_replace
替换/?
结尾的?
{$variable|regex_replace:"/\/$/":""|regex_replace:"/\/\?$/":"?"}
使用Smarty变量修饰符regex_replace
:
{$url|regex_replace:"#/$#":""}
我正在尝试从 smarty 变量中获取最后一个字符。
我知道我可以使用 substr
删除最后一个字符,也可以用 replace
替换一个字符。
但我只想删除以 /
比如我的字符串是/homepage/
,我想变成/homepage
但是如果我有 /homepage
它应该是 /homepage
编辑:
也适用于字符串 /homepage/?
-> /homepage?
您可以使用 Smarty regex_replace 并匹配到 \
如果它是带有 \/$
的最后一个字符并将其替换为空字符串。
同理可以用regex_replace
替换/?
结尾的?
{$variable|regex_replace:"/\/$/":""|regex_replace:"/\/\?$/":"?"}
使用Smarty变量修饰符regex_replace
:
{$url|regex_replace:"#/$#":""}