【问题标题】:How do I duplicate the lowercase letters from a text file in Linux using grep/sed/awk?如何使用 grep/sed/awk 从 Linux 中的文本文件中复制小写字母?
【发布时间】:2015-03-07 20:08:01
【问题描述】:

[编者注:本题原用“小写字母”一词指代小写字母。]

我需要使用 grep/sed/awk 从文件中复制小写字母,但我不知道该怎么做。例如,给定输入John has an Audi,我希望输出为:Joohhn hhaass aann Auuddi

我是 Linux 新手,所以如果您能提供一点帮助,那就太好了。

【问题讨论】:

  • “小写字母”是什么意思?可以举个例子吗?
  • 例如如果有:John 有一辆奥迪,结果是:Joohhn hhaass aann Auuddi

标签: linux sed


【解决方案1】:

如果您想要将每个小写字母替换为两个相同的小写字母,请尝试sed 's/\([a-z]\)/\1\1/g'。这会将Hello world! 变成Heelllloo wwoorrlldd!

正如 Ed Morton 在this comment 中指出的那样,对于某些语言环境,这将不起作用。 sed 's/\([[:lower:]]\)/\1\1/g' 应该适用于所有语言环境。

【讨论】:

  • @dd1714:为了回答者和未来读者的利益:如果答案解决了您的问题,请点击大检查接受在它旁边做标记;如果您觉得它至少有帮助,请点击向上箭头图标up-vote
  • 它可能适合您,但请注意,在某些会重复大多数大写字母的语言环境中,您应该使用 [[:lower:]] 而不是 [a-z]
猜你喜欢
  • 2021-06-19
  • 2021-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-02
相关资源
最近更新 更多