首页 > 解决方案 > grep 与正则表达式模式递归

问题描述

用于搜索字符串中所有重复的正则表达式模式。

ex- echo '%%MYSQL_PORT%%=%%3356%%' | grep \%%.*\%%

实际输出-%%MYSQL_PORT%%=%%3356%%

预期输出 - %%MYSQL_PORT%% %%3356%%

标签: regexgrep

解决方案


您可以使用

echo '%%MYSQL_PORT%%=%%3356%%' | grep -o '%%[^%]*%%'

查看在线演示

您需要-o仅输出匹配项的选项,并且您应该替换.*[^%]*仅匹配 0 个或更多字符而不是%char 的字符。

输出:

%%MYSQL_PORT%%
%%3356%%

推荐阅读