我有一個文本文件,我迭代並希望檢查每行中的多個子字符串(每行有一個子字符串)。正則表達式在一個字符串中的多個字符串
我正則表達式如下
String rE = "(AGG|TIP|IDV|DVY|IYR|LQD|HYG|EMB|ACWI|ACWX|EFA|SCZ|EEM|IWB|IWF|IWD|IWM|IWO|IWN|IWV|IVV|IVW|IVE|IJH|IJK|IJJ|MUB|IJR|IJS|IJT|SPY)"
和我的文本文件的行如下所示:
SPY,6696832,31080,140.7,400,140.69,140.69,6396960,299872
然而,當我這樣做:
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
System.out.println("Starting");
while ((retStr = in.readLine()) != null) {
if(retStr.matches(tickers)){
System.out.println(retStr);
}
}
我沒有找到我的字符串秒。
該代碼編譯和運行完美。我遍歷該文件,但我從來沒有找到我的結果。
我可以幫我解釋一下我做錯了什麼嗎?
'匹配(...)'必須匹配整個字符串。考慮顯示更多文件行,以便我們可以看到必須分析的文本行的其他配置。 –
它在文檔中說它將一個正則表達式作爲參數:http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html#matches(java.lang.String ) –
jason:我沒有看到任何與該陳述不同的帖子或評論。 –