makefile常见的字符串处理函数如下
1.$(subst <\from>,<to>,<text> )
把text中字符串from替换为to,返回替换之后的值
$(subst oo,ee,good food book) -> geed feed beek
2.$(patsubst <pattern>,<replacement>,<text> )
查找<text>中的单词(单词以“空格”、“Tab”或“回车”“换行”分隔)是否符合模式<pattern>,如果匹配的话,则以<replacement>替换.<pattern>可以包括通配符“%”,表示任意长度的字串.
bar := a.c.c.c e.c f.c.a
$(patsubst %.c,%.o,$(bar)) -> a.c.c.o e.o f.c.a
从输出结果中可以看出,使用%通配符做模式替换时,只会对结尾符合匹配模式进行替换.
3.$(findstring <find>,<in> )
在字串<in>中查找字串,如果找到,那么返回<find>,否则返回空字符串.
4.$(filter <pattern…>,<text> )
以<pattern>模式过滤<text>字符串中的单词,保留符合模式<pattern>的单词,支持多个模式 .
bar := a.c.c.c e.c f.c.a $(filter %.c,$(bar)) -> a.c.c.c e.c
5.$(sort <list> )
给字符串中的单词排序,sort 函数会去掉<list>中相同的单词.
bar = good better best $(sort $(bar)) -> best better good
makefile字符串处理函数
最新推荐文章于 2023-03-19 00:46:05 发布