You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用jq将文本转换为每个单词首字母大写的标题格式

使用 jq 实现文本标题化的方法

标题化即把文本中每个单词的首字母转为大写,其余字符保持不变,比如"lorum ipsum"转换后得到"Lorum Ipsum",用 jq 可以通过分割、遍历处理、拼接三步实现:

基础实现命令

针对普通单空格分隔的文本,直接使用以下命令即可:

# 输入示例字符串,输出转换后结果
echo '"lorum ipsum"' | jq 'split(" ") | map( .[0:1] | ascii_upcase + .[1:] ) | join(" ")'

命令逻辑说明

  • split(" "):将输入的字符串按空格分割为单个单词组成的数组
  • map(...):遍历数组中的每一个单词做统一处理:
    • 取单词的第一个字符.[0:1],调用ascii_upcase转为大写
    • 拼接单词从第二个字符开始的剩余内容.[1:]
  • join(" "):将处理完成的单词数组用空格重新拼接为完整字符串

兼容复杂场景的实现

如果文本存在连续空格、单词前后有特殊符号的情况,可以用正则匹配提取单词后再处理,避免空元素干扰:

echo '"lorum   ipsum  dolor_sit amet"' | jq '[scan("\\w+")] | map( .[0:1] | ascii_upcase + .[1:] ) | join(" ")'

上述命令输出结果为"Lorum Ipsum Dolor_sit Amet"。

内容的提问来源于stack exchange,提问作者Skurhse Rage

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 14:45:03