0

私の質問は、私の現在の正規表現ではないものをどのように正規表現するのですか。

私の正規表現は次のとおりです: 9\d\d\d\d\d\d\d\d\d

9で始まる10桁の数字を見つけようとしていますが、今はこれと反対の人を見つけたいと思っています。

それ、どうやったら出来るの?私はそれをnotepad ++正規表現で使用しようとしています.10桁ではなく、9で始まるものを見つけて削除します。

削除する必要があります: 10 桁ではなく、9 で始まらない限り、桁数に関係なくすべて。

ありがとうございました。

このような長いファイルがあります。

 905664572
 9055148
 9052836956
 9054950806
 9059105646
 905403434
 905654765
 9058618018
 90547214

10桁ではないものをすべて取り除く必要があります。

メモ帳++の使用中

この正規表現は機能します: 9\d\d\d\d\d\d\d\d\d

この正規表現は: 9\d{9} AND ^9(\d{0,9}


これは私がやろうとしていたことにうまくいきました:

 (?<!\d)[0-9](\d{0,8})
4

3 に答える 3

3
^9(\d{0,8}|\d{10,})$

ここにあなたのテストがあります。 http://www.rubular.com/r/Ls56UCYRHa

正規表現の詳細http://www.regular-expressions.info

于 2012-10-26T12:39:54.093 に答える
1

あなたの正規表現は...9\d\d\d\d\d\d\d\d\dに短縮される可能性があります。9\d{9}

まあ、反対は(?!9\d\d\d\d\d\d\d\d\d)または(?!9\d{9})または9(?>!\d{9})

編集:ワーキングエクスプレス:(?<!\d)9(\d{0,8}|\d{10,})(?=\D)

于 2012-10-26T12:40:53.170 に答える
0

正規表現を使用できます:

^9(\d{0,8}|\d{10,})$

これにより、入力がa9で始まり、その後に9桁を除く任意の桁数が続くことが保証されます。

于 2012-10-26T12:41:55.677 に答える