小编Sil*_*033的帖子

在 Bash 中用新行 (\n) 替换字符串中的字符串

我试过这个命令:

[silas@mars 11]$ string=xyababcdabababefab
[silas@mars 11]$ echo ${string/abab/"\n"}
xy\ncdabababefab
[silas@mars 11]$
Run Code Online (Sandbox Code Playgroud)

我还尝试将 "\n" 替换为 '\n' 和 \n 。我不能使用 AWK 或 sed(这是作业练习的一部分,老师不允许在这个特定练习中使用)。

bash string

6
推荐指数
3
解决办法
1万
查看次数

egrep 正则表达式 - 开头和结尾的单词相同

我想找到在行首和行尾具有相同单词的所有行。

例如:

goodword         fgdlakj 3t sfkl 43lk fkl goodword
bad sfa;lk3t   dgk;gs    34;kl bad334
singleword
Run Code Online (Sandbox Code Playgroud)

期望输出

goodword         fgdlakj 3t sfkl 43lk fkl goodword
singleword
Run Code Online (Sandbox Code Playgroud)

我的代码是:

egrep "(^.+)([ ]+.*\1)$"
Run Code Online (Sandbox Code Playgroud)

如果该行有 1 个以上的单词,它确实有效。但我也想要一行包含一个单词来匹配。

所以我试过:

egrep "(^.+)($|([ ]+.*\1)$)"
Run Code Online (Sandbox Code Playgroud)

它不再起作用了-我不知道为什么。

grep text-processing regular-expression

5
推荐指数
2
解决办法
685
查看次数

标签 统计

bash ×1

grep ×1

regular-expression ×1

string ×1

text-processing ×1