私は基本的にIP検出器の正規表現とは何かに取り組んでいます。
基本的に、ピリオドが含まれていないすべての数値を削除したいと思います。
たとえば、次のサンプル入力があります。
1 >Matches
12 >Matches
134 >Matches
156 >Matches
1567 >Matches
1.99 >No Match
.100 >Don't care
1.2.3.4 >No Match
.1.2.3.4 >No Match
これは、すべての一致を削除するために使用されます。一致はスペースで区切られます。たとえば、文字列を入力した場合:
"14. 24. asf.d 7 .12 .498 .s g 14091 87.49 .sdf.gs.df 12874 ds.fgs 9.127.41 sd.fg 92.47 sd.fg 892.14 sd.fg .79 12 s.df 47 8 .sdfg 1.9 sdfg 2.4 71. s9 24 .ds.f.g 71.9 8 s.df 4 .g 7 132. .sdfg 4 s.dfg"
文字列に似たものが返される場合があります。
"asf.d .s g 87.49 .sdf.gs.df ds.fgs 9.127.41 sd.fg 92.47 sd.fg 892.14 sd.fg s.df .sdfg 1.9 sdfg 2.4 s .ds.f.g 71.9 s.df .g .sdfg s.dfg"
私は次のようになりました:
([0-9]+)(?=)
ただし、ピリオドが含まれている場合、正規表現で数値を無視する方法がわかりません(実際、ピリオドが含まれている場合でも、最初に数値を選択する方法がわかりません!)