我想讀取包含以下內容的文本文件,我試圖使用正則表達式匹配並將內容分割爲2個優先級隊列的不同字符串,以製作基於堆的優先級隊列任務調度。但首先,我需要確保格式在我使用Scanner讀取的文本文件中是正確的,它從包含字母數字字母的任務開始,然後是非負整數(到達時間)和自然數(截止時間)。以下是正確格式的文本文件中輸入:在java中重複正則表達式模式
task1 2 3 task2 2 3 task3 2 3 task4 4 5 task5 4 5
task6 7 9 task7 7 9 task8 7 9 task9 7 9
task10 7 9 task11 7 9 task12 7 9 task13 7 9
task14 7 9 task15 7 9 task16 10 11 task17 10 11
task18 10 11 task19 10 11 task20 10 12
我嘗試下面的正則表達式的代碼,試圖檢查格式是否正確,但我只能匹配它的第一個任務屬性。我似乎無法將它與第一項任務相匹配,這意味着當它繼續格式重複的其他任務時,則正則表達式將失敗。任何想法我的正則表達式有什麼問題?
(^\s*[a-zA-Z0-9]*\s+\d+\s+\d+\s*){1,}
^
開始與任何空間\s*
0次或多次
[a-zA-Z0-0]*
是字母數字0次或多次,指的是任務
\s+
是白色空間之間的不同任務屬性
\d+
是到貨時間和截止時間
\s*
與白色空間
{1,}
不同任務之間0次或多次結束()
括號後指定重複的最小數目是1時,與最大重複