Regex 如何提取两个静态键之间的字符串?

Regex 如何提取两个静态键之间的字符串?,regex,linux,Regex,Linux,以字符串形式显示,如下所示: alias LXX "|lp -dYYYYYYY -o nb -o raw -s 2>/dev/null", lp-d[YYYYYY]-o可以发生在字符串的部分。[LXX]和[YYYYYY]是需要从每一行提取的部分 任何使用正则表达式的解决方案都将受到欢迎 谢谢在Linux中,您可以使用grep和-o和-p来实现: grep -oP 'lp -d\K\S*' filename.txt 格雷普环顾四周: grep -Po '(?<=lp -d).*?(

以字符串形式显示,如下所示:

alias LXX "|lp -dYYYYYYY -o nb -o raw -s 2>/dev/null",
lp-d[YYYYYY]-o
可以发生在字符串的部分。[LXX]和[YYYYYY]是需要从每一行提取的部分

任何使用正则表达式的解决方案都将受到欢迎


谢谢在Linux中,您可以使用grep和-o和-p来实现:

grep -oP 'lp -d\K\S*' filename.txt

格雷普环顾四周:

grep -Po '(?<=lp -d).*?(?= -o)' filename.txt

grep-Po'(?请格式化该日志并添加所需的输出,以便其他人可以查看并帮助您。我希望通过这种方式可以清楚地表明这一点。谢谢!破坏者,您的bash命令大部分都有效,但它忽略了几行,例如alias L30“| lp-dl30-o和alias L31”|lp-dl31-o nb和…有什么想法吗?我应该更改正则表达式吗?您应该提供问题中类型的示例。可能是在输入红线中lp和-dl之间有多个空格。无法猜测,需要使用真实示例进行检查。