本文介绍了仅模式匹配字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含单词

abciuf.com abdbhj.co.in abcshjkl.org.in.2 abciuf zasdg cbhjk asjk

,包括其他内容.以abci, abdb, abcs, abai开头的单词是我的要求.因此,我只希望打印以abci, abdb, abcs, abai开头的单词,例如-abciuf.com abdbhj.co.in abcshjkl.org.in.2 abciuf Azerbaijan

including other contents. The word starts with abci, abdb, abcs, abai is my requirement. So I want only the word which print starts with abci, abdb, abcs, abai like - abciuf.com abdbhj.co.in abcshjkl.org.in.2 abciuf Azerbaijan

我已经通过grep命令尝试过,但是对我没有帮助

I have tried via grep command but it doesn't help me

cat /etc/xyz.txt|egrep -o "abdb*|abci*|abcs*|abai*"
cat /etc/xyz.txt|egrep -Eow "abdb*|abci*|abcs*|abai*"

推荐答案

您也可以尝试Perl

You can try Perl also

 perl -ne ' while(/(\b(abdb|abci|abcs|abai)\S+)/g) { print "$1 \n" } '

使用您的输入

$ cat sin15.txt
abciuf.com abdbhj.co.in abcshjkl.org.in.2 abciuf zasdg cbhjk asjk

$ perl -ne ' while(/(\b(abdb|abci|abcs|abai)\S+)/g) { print "$1 \n" } ' sin15.txt
abciuf.com
abdbhj.co.in
abcshjkl.org.in.2
abciuf

$

这篇关于仅模式匹配字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

06-09 19:25