From b13bb0d6b99fb0de1c1c09678c5b327866a2043c Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Wed, 7 Dec 2022 22:38:58 +0800 Subject: [PATCH] doc: update make.md #200 --- docs/make.md | 74 ++++++++++++++++++++++++++-------------------------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/docs/make.md b/docs/make.md index 637d9f0..97eaddc 100644 --- a/docs/make.md +++ b/docs/make.md @@ -680,26 +680,23 @@ all: 函数 --- -### 字符串处理函数 - +### 字符串处理函数 - 替换函数(`subst`) -#### 字符串替换函数(`subst`) - -* 把字串 \ 中的 \ 字符串替换成 \ 。 +把字串 \ 中的 \ 字符串替换成 \ 。 ```makefile $(subst ,,) ``` -* 示例 +示例 ```makefile $(subst ee,EE,feet on the street) ``` -#### 模式字符串替换函数(`patsubst`) +### 字符串处理函数 - 模式字符串替换函数(`patsubst`) -* 查找 \ 中的单词(**单词以空格、Tab或回车换行分隔**)是否符合模式 \。匹配,则以 \ 替换。 +查找 \ 中的单词(**单词以空格、Tab或回车换行分隔**)是否符合模式 \。匹配,则以 \ 替换。 ```makefile $(patsubst ,,) @@ -709,49 +706,52 @@ $(patsubst ,,) ```makefile $(patsubst %.c,%.o,x.c.c bar.c) -把字串 x.c.c bar.c 符合模式 %.c 的单词替换成 %.o ,返回结果是 x.c.o bar.o ``` -#### 去空格函数(`strip`) +把字串 x.c.c bar.c 符合模式 %.c 的单词替换成 %.o ,返回结果是 x.c.o bar.o -* 去掉 字串中开头和结尾的空字符。 +### 字符串处理函数 - 去空格函数(`strip`) + +去掉 字串中开头和结尾的空字符。 ```makefile $(strip ) ``` -* 示例 +示例 ```makefile $(strip a b c ) -# 把字串 a b c 去掉开头和结尾的空格,结果是 a b c。 ``` -#### 查找字符串函数(`findstring`) +把字串 `a b c` 去掉开头和结尾的空格,结果是 a b c。 -* 在字串 \ 中查找 \ 字串。 +### 字符串处理函数 - 查找字符串函数(`findstring`) + +在字串 \ 中查找 \ 字串。 ```makefile $(findstring ,) ``` -* 示例: +示例: ```makefile $(findstring a,a b c) $(findstring a,b c) -# 第一个函数返回 a 字符串,第二个返回空字符串 ``` -#### 过滤函数(`filter`) +第一个函数返回 a 字符串,第二个返回空字符串 -* 以 \ 模式过滤 \ 字符串中的单词,保留符合模式 \ 的单词。可以有多个模式。 +### 字符串处理函数 - 过滤函数(`filter`) + +以 \ 模式过滤 \ 字符串中的单词,保留符合模式 \ 的单词。可以有多个模式。 ```makefile $(filter ,) ``` -* 示例 +示例 ```makefile sources := foo.c bar.c baz.s ugh.h @@ -761,15 +761,15 @@ $(filter %.c %.s,$(sources)) # 返回的值是 foo.c bar.c baz.s ``` -#### 反过滤函数(`filter-out`) +### 字符串处理函数 - 反过滤函数(`filter-out`) -* 以 \ 模式过滤 \ 字符串中的单词,去除符合模式 \ 的单词。可以有多个模式。 +以 \ 模式过滤 \ 字符串中的单词,去除符合模式 \ 的单词。可以有多个模式。 ```makefile $(filter-out ,) ``` -* 示例: +示例: ```makefile objects=main1.o foo.o main2.o bar.o @@ -778,28 +778,28 @@ $(filter-out $(mains),$(objects)) # 返回值是 foo.o bar.o 。 ``` -#### 排序函数(`sort`) +### 字符串处理函数 - 排序函数(`sort`) -* 给字符串 \ 中的单词排序(升序)。 +给字符串 \ 中的单词排序(升序)。 ```makefile $(sort ) ``` -* 示例:`$(sort foo bar lose)` 返回 bar foo lose。 -* 注意:sort 函数会去掉 `` 中相同的单词。 +* 示例:`$(sort foo bar lose)` 返回 `bar foo lose` +* 注意:sort 函数会去掉 `` 中相同的单词 -#### 取单词函数(`word`) +### 字符串处理函数 - 取单词函数(`word`) -* 取字符串 \ 中第 \ 个单词。(从一开始) +取字符串 \ 中第 \ 个单词。(从一开始) ```makefile $(word ,) ``` -* 示例:`$(word 2, foo bar baz)` 返回值是 `bar`。 +示例:`$(word 2, foo bar baz)` 返回值是 `bar` -#### 取单词串函数(`wordlist`) +### 字符串处理函数 - 取单词串函数(`wordlist`) * 从字符串 \ 中取从 \ 开始到 \ 的单词串。\ 和 \ 是一个数字。 @@ -809,7 +809,7 @@ $(wordlist ,,) 示例:`$(wordlist 2, 3, foo bar baz)` 返回值是 bar baz。 -#### 单词个数统计函数(`words`) +### 字符串处理函数 - 单词个数统计函数(`words`) * 统计 \ 中字符串中的单词个数。 @@ -819,7 +819,7 @@ $(words ) * 示例:`$(words, foo bar baz)` 返回值是 3。 -#### 首单词函数(`firstword`) +### 字符串处理函数 - 首单词函数(`firstword`) * 取字符串 \ 中的第一个单词。 @@ -827,11 +827,10 @@ $(words ) $(firstword ) ``` -* 示例:`$(firstword foo bar)` 返回值是 foo。 - - +* 示例:`$(firstword foo bar)` 返回值是 `foo` ### 文件名操作函数 + #### 取目录函数(`dir`) @@ -950,7 +949,8 @@ $(foreach ,,) --- ```makefile -# $(name) 中的单词会被挨个取出,并存到变量 n 中, $(n).o 每次根据 $(n) 计算出一个值,这些值以空格分隔,最后作为 foreach 函数的返回 +# $(name) 中的单词会被挨个取出,并存到变量 n 中, +# $(n).o 每次根据 $(n) 计算出一个值,这些值以空格分隔,最后作为 foreach 函数的返回 names := a b c d files := $(foreach n,$(names),$(n).o) run: