Makefile之字串函式

2022-06-07 10:30:14 字數 2067 閱讀 3225

1.subst字串替換函式

$(subst ,,)

名稱:字串替換函式——subst。

功能:把字串中的字串替換成。

返回:函式返回被替換過後的字串。

例子:

comma :=,

empty :=space :=$(empty) $(empty)

string :=a b c d

bar :=$(subst $(space),$(comma),$(string

))all:

@echo $(bar)

這裡:

space := $(empty) $(empty)必須是兩個空格;否則正常顯示效果;

2.patsubst模式字串處理函式

$(patsubst $(pattern),$(replacement),$(text))

函式功能:

將text中的符合pattern模式的,替換成repacement;

例子:3.strip去除開頭和結尾的空格符

$(strip )

函式功能:

去除字串的開頭和結尾空格符

4.findstring查詢字串函式

$(findstring ,)

函式功能:

在字串中,查詢字串;

如果找到,則返回字串;

否則,返回空字串;

5.filter過濾函式

$(filter ,)

函式功能:

以模式過濾字串中的單詞,保留符合模式的字串;

注意:這可以有多個模式;

舉例:

a = 1.c 2.o 3.s 4

.hb = $(filter %.c %.s,$(a))

all:

echo $b

函式輸出:1.c 3.s

6.filter-out反過濾函式

函式功能:

去除符合模式的字串,返回不符合的字串

$(filer-out ,)

舉例:

a = 1.c 2.o 3.s 4

.hb = $(filter-out %.c %.s,$(a))

all:

echo $b

函式輸出:2.o   4.h

7.sort排序函式

函式功能:給單詞按照首字母,公升序

舉例:

a =bf dc ca ba ac

b =$(sort $(a))

all:

echo $b

函式輸出:ac ba bf ca dc

8.word取單詞函式

$(word ,) 

函式功能:返回text中的第n個單詞;從1開始

舉例:

a =bf dc ca ba ac

b = $(word 2

,$(a))

all:

echo $b

函式返回:dc  也就是第二個字串;

9.wordlist取單詞串函式

$(wordlist ,,)

函式功能:

返回text字串中,從s開始,到e的所有單詞

舉例:

a =bf dc ca ba ac

b = $(wordlist 2,4

,$(a))

all:

echo $b

函式返回:dc ca ba

10.words單詞個數統計函式

$(words )

函式功能:

統計text中的單詞個數

舉例:11.firstwords返首個單詞

$(firstword )

函式功能:

取字串中的第乙個單詞

舉例:

a =bf dc ca ba ac

b =$(firstword $(a))

all:

echo $b

函式返回:bf

Makefile七之字串處理函式

函式概述 函式呼叫,很像變數的使用,也是以 來標識的,其語法如下 或是 這裡,就是函式名,make 支援的函式不多。是函式的引數,引數間 以逗號 分隔,而函式名和引數之間以 空格 分隔。函式呼叫以 開頭,以圓括號 或花括號把函式名和引數括起。1 subst subst 名稱 字串替換函式 subst...

makefile字串處理函式

makefile常見的字串處理函式如下 1.subst from 把text中字串from替換為to,返回替換之後的值 subst oo,ee,good food book geed feed beek 2.patsubst 查詢中的單詞 單詞以 空格 tab 或 回車 換行 分隔 是否符合模式,如...

makefile 中字串處理 函式

一 函式的呼叫語法 函式呼叫,很像變數的使用,也是以 來標識的,其語法如下 或是 這裡,就是函式名。是函式的引數,引數間以逗號 分隔,而函式名和引數之間以 空格 分隔。二 字串處理函式 subst 名稱 字串替換函式 subst。功能 把字串中的字串替換成new。返回 函式返回被替換過後的字串。示例...