2016-10-24 3 views
-1

私はC#でpdf scrapperで作業していますが、私は正規表現の問題を抱えています。私は口座番号と一致したいと思います。私の正規表現のステートメントは、間違った行と正しい行の両方に一致しています。私は新しい行まですべてを一致させなければならないと思うが、それを行う方法が見つからない。Regexは新しい行までPDFでアカウント番号を一致させます

This is my regex: ([A-Z0-9\-]{5,30})-[0-9]{1,10}-[0-9]{3} 

XXX-XX-914026-1558513 // I don't want to match this line 

130600298-110-528 // I want to match this line 

ありがとうございます!

答えて

1

あなたがアンカーを追加する必要があります。

ライン( ^)と行( $)の終わりの開始を意味
^([A-Z0-9\-]{5,30})-[0-9]{1,10}-[0-9]{3}$ 
^          ^

。そうしないと

して、試合は次のようになります。

XXX-XX-914026-1558513 
^^^^^^^^^^^^^^^^^ 

また、あなたは文字クラスの最後にキャレットをエスケープする必要はありません、あなたは\dの代わりに使用することができます[0-9] 注:これは任意の文字コードの数字に一致します。

^([A-Z0-9-]{5,30})-\d{1,10}-\d{3}$ 
関連する問題