2013-07-12 29 views
0

我是新的正則表達式。我有一個要求匹配一個csv字符串中的字符串。我可以使用常規子字符串/ startswith/endswith EL表達式來完成此操作,但是我想使用正則表達式來嘗試。任何對此的幫助將非常可觀。使用正則表達式在csv中匹配字符串

我的CSV模式命名myCSV:PAT,BAT,924,EH,23,5A,G12 它可以與任何字母數字字符的CSV文件。 我的字符串名爲的myString如果myString的myCSV

存在我想下面的代碼將是任何PAT或BAT或924等 我要檢查的,它沒有工作。 :(

<c:set var="myRegEx" value="([,]?)+${myString}+([,]?)" scope="page"/> 
<c:if test="${fn:containsIgnoreCase(myCSV , myRegEx)}"> 
// do stuffs 
</c:if> 

回答

0

在正則表達式的「+」符號是一個量詞,它的全稱是「一個或多個」所以你使用它錯了,你不需要來連接,如果這是你想什麼。您還需要使用方法matches

+0

謝謝,我試過使用([,]?)$ {myString}([,]?),即沒有'+',它不起作用。 – invisible

+0

@ user2187477這裏$ {myCSV == myRegEx}你只測試對象是否相同,不使用正則表達式。 – amaurs

+0

你是對的..我編輯了我的問題。謝謝 – invisible