我正在尝试创建一个用于删除m4中字符串的最后一个字符的宏,我试图做类似的事情:
define(`delete_last',substr(`$1',`0',eval(``len($1)'-1')))dnl
这是最接近工作的,但我仍然无法正常实现。我现在需要一些帮助。
答案 0 :(得分:1)
不知道这是最好的方法,但它有效:
define(`__count_m1',`eval($1 - $2)')dnl
define(`__del_last3',`substr($1,`0',__count_m1(len($1),3))')dnl
答案 1 :(得分:1)
我最近不得不写这样一个宏,对我有用的是:
define(`CHOMP',`substr($1,0,eval(len($1)-1))')dnl
因人而异。