Xcode Build Settings:如何将变量首字母大写
实现Bundle Identifier首字母大写的方法
Xcode Build Settings没有直接提供首字母大写的内置转换符,但可以通过两种实用方式实现需求:
方案一:通过Run Script预处理变量
- 打开Xcode项目的
Build Phases,添加一个Run Script阶段,调整顺序到Copy Bundle Resources之前 - 粘贴以下脚本,提取并处理Bundle Identifier:
# 获取原始Bundle Identifier ORIGINAL_BUNDLE_ID="${PRODUCT_BUNDLE_IDENTIFIER}" # 拆分首字母与剩余部分,首字母转大写 CAPITALIZED_FIRST=$(echo "${ORIGINAL_BUNDLE_ID:0:1}" | tr '[:lower:]' '[:upper:]') REST_OF_STRING="${ORIGINAL_BUNDLE_ID:1}" # 将处理后的值存入环境变量 export CAPITALIZED_BUNDLE_ID="${CAPITALIZED_FIRST}${REST_OF_STRING}"
- 返回Build Settings,在需要使用的位置直接引用
$(CAPITALIZED_BUNDLE_ID)即可
方案二:直接在Build Settings中使用复合表达式
如果不想新增Run Script阶段,可尝试在自定义值中直接写入:
$(echo ${PRODUCT_BUNDLE_IDENTIFIER} | sed 's/^\(.\)/\U\1/')
该sed命令会匹配字符串首字符并转为大写,其余字符保留原有大小写。
注意:部分Xcode版本对Build Settings中嵌套Shell命令的支持有限,若出现解析异常,优先选用方案一。
内容的提问来源于stack exchange,提问作者Eng
相关产品推荐
相关产品推荐

