私は正規表現を使用してさらに処理するためにチャットログファイルからデータを抽出する必要があるJavaプログラムを作成しています道)。チャットログスキーマは、[hh:mm:ss]文字列と定義されています。
しかし、データを抽出したい特定の行は、 [hh:mm:ss] <データ1 >データ2の形式です。私が抽出したいデータは、hh:mm:ss、data1およびdata2です。 最初に、私は使用しやすい時間を抽出しようとしました Pattern.compile( "(\ d {2}:\ d {2}:\ d {2})
パターンP1 = Pattern.compile( "<(*)>")を使用して個別にDATA1を抽出し、それは大丈夫だった
しかし、私は "hh:mm:ss" の取得しようとするとき、DATA1とDATA2を。 I以下の正規表現 パターンp = Pattern.compile( ":\ dの{2}。\ dの{2}) <(*)> (*)(\ dの{2}")を用いてh一致するものは見つかりませんでした。 私の目標を達成するためにどのように進めることができるのか、誰かがアイデアを持っていますか?regexとjavaを使用してチャットログから一連のデータを取得
0
A
答えて
1
あなたが自分のパターンにマッチしていれば、うまくいっていたはずです。 [hh:mm:ss ]の時間の括弧については忘れてしまいます。ここを参照してください:
はString text = "22:44:55 <data quite much> data 2";
text = text.replaceAll("(\\d{2}:\\d{2}:\\d{2}) <(.*)> (.*)", "replacement");
System.out.println(text);
text = "[22:44:55] <data quite much> data 2";
text = text.replaceAll("(\\d{2}:\\d{2}:\\d{2}) <(.*)> (.*)", "replacement");
System.out.println(text);
これが生成します。
replacement
[22:44:55] <data quite much> data 2
だから、最初の文字列が一致し、1秒た - ではありません。ちょうど期待どおり。
おそらくパターンを\\[(\\d{2}:\\d{2}:\\d{2})\\] <(.*)> (.*)
に変更する必要があります。
+0
ありがとうBoris、それは完全に動作します。私は今プログラミングプロセスを続けることができます。あなたに貸しがある –
関連する問題
- 1. (桟橋)、Javaサーブレットを使用してURLからデータを取得
- 2. Excel:一連の行からキーを使用して特定の値を取得
- 3. Java - Jsoupを使用してウェブサイトからデータを取得していますか?
- 4. java - JcomboBoxを使用してデータベースとディスプレイからデータを取得する
- 5. regexを使用してファイル名からタイトルと年を取得します
- 6. 一連のデータから最初の行を取得するXSLT
- 7. XRM SDKを使用してmsダイナミクスcrmから関連データを取得
- 8. ウェブページからデータを取得し、Androidで使用するJava
- 9. YQLとXPathを使用してHTMLからデータを取得
- 10. Javaコードを使用してmongodb Collectionから単一の値を取得
- 11. Linq-to-SQLを使用してデータベースから単一のデータを取得
- 12. Java - iBatisを使用してDBから大量のデータを取得する
- 13. Javaを使用してWebブラウザのダウンロードマネージャからデータを取得する
- 14. ajaxを使用してjspページのjavaハッシュテーブルからデータを取得する
- 15. Javaのregexを使用して電子メールIDを取得しない
- 16. Pythonを使用してnetsuiteからデータを取得してプッシュ
- 17. Javaを使用してMongoDBバージョン3.4からデータを取得する方法は?
- 18. Spark over Javaを使用してOracleからデータを取得&フェッチする
- 19. JavaのSOAP C#Webserviceから単一のデータを取得
- 20. linqを使用してデータセットから一意の値を取得
- 21. JavaのgetDateTimeFormatを使用してカレンダーからカスタムフォーマットを取得
- 22. APIを使用してJavaのテストセットフォルダからテストインスタンス名を取得
- 23. Jquery-リンクの配列オブジェクトからHTMLを取得してRegExを使用する
- 24. Java Regex - regexを使って "関数"引数の配列を取得しようとしています
- 25. コマンドラインを使用してファイルからデータを読み取るJava
- 26. RegEx - 何かの間にデータを取得
- 27. JQueryを使用して別のPHPファイルからデータを取得
- 28. sonarqubeのAPIを使用してメジャーフィルターからデータを取得
- 29. Where-Objectを使用してオブジェクトから他のデータを取得
- 30. サーバーjsのキーを使用してmongoからデータを取得
データのサンプルを提供できますか? –