regex - 用 "-"替换所有空格

标签 regex linux bash shell sed

我想用 - 替换所有空格,如果该行包含 -,我想在 bash 中使用 sed 删除空格,例如

asd asd -> asd-asd
asd - asd -> asd-asd

最佳答案

您可以将 tr-s 选项(“挤压”)一起使用:

$ tr -s ' ' - <<< 'asd asd'
asd-asd
$ tr -s ' ' - <<< 'asd - asd'
asd-asd

关于regex - 用 "-"替换所有空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47087077/

相关文章:

regex - 从大约 5 个单词中以任意顺序匹配至少 3 个单词

php - 使用 preg_replace 返回引用数组键并替换为值

linux - 无法让 setenv 在 .htaccess 中工作

c++ - System V 消息队列问题

bash - 如何使用 vim 打开目录下的每个 .txt 文件(使用 Bash)

Bash:如何获得符号链接(symbolic link)的真实路径?

bash - Ubuntu 脚本在 CRON 中不起作用

php - mysql 正则表达式构建

javascript - 匹配字符串中的单词,无论中间是什么

c++ - 使用 clang 时需要自己安装所有头文件和库吗?