-1

ファイルに次のデータがあります

Muhammad,Ali    House 12 Mazhar Colony Rawalpindi   0333-5438855
Bushra,Qadir    Gulberg Society Lahore  0234-5321998
Muhammad,Imtiaz Sector E-11/4 Islamabad 0331-4320988
Ehtasham Ul,Haq Chinar House Islamabad  0432-2294712
Summaya,Mumtaz  NUST Hostel-3 Islamabad 0321-7659832
Junaid,Riaz Sadar Road Rawalpindi   0331-5332222

を使用して、姓が正確に 5 文字で、名が 3 文字または 4 文字の長さの行を検索する必要がありgrepます。私は多くの異なるコードを試しましたが、運はまだ私を支持していません. これに関するアイデアはありますか?

4

2 に答える 2

6

あなたは次の線に沿って何かを試すことができます:

grep -E '^\w{5},\w{3,4}\s'

ファイルの内容:

Muhammad,Ali    House 12 Mazhar Colony Rawalpindi   0333-5438855  
Bushr,Qadi    Gulberg Society Lahore  0234-5321998
Muham,Imt Sector E-11/4 Islamabad 0331-4320988
Ehtasham Ul,Haq Chinar House Islamabad  0432-2294712
Summaya,Mumtaz  NUST Hostel-3 Islamabad 0321-7659832
Junaid,Riaz Sadar Road Rawalpindi   0331-5332222

出力:

Bushr,Qadi    Gulberg Society Lahore  0234-5321998
Muham,Imt Sector E-11/4 Islamabad 0331-4320988
于 2012-11-14T17:49:36.790 に答える
0

私は多くの異なるコードを試しましたが、運はまだ私を支持していません。

運はそれとは何の関係もありません。5文字、コンマ、3文字または4文字、スペースの順に検索します。

^    is the beginning of a line
\w   is "a letter"
{n}  means "this many repetitions"
\s   is "a whitespace" (space, tab, nonbreaking space etc.)

すべてをまとめて正規表現を取得するだけです。

^\w{5},\w{3,4}\s
于 2012-11-14T23:39:49.070 に答える