此刻我想如C#模式匹配的可靠途徑?
text text date1 date2
所以我有正則表達式完成這些任務的匹配模式。然而,這個問題是,例如,如果用戶輸入的數據說多於1個空格或者他們把一些文字放在一個新行中等模式不會被拿起,因爲它不確切符合模式設置。
是否有更可靠的模式匹配方式?我們的目標是讓用戶編寫起來非常簡單,但在我的結尾可以輕鬆匹配。我正在考慮刪除所有的空白/換行符等,然後嘗試匹配沒有空格的模式,即texttextdate1date2
。
任何人有更好的解決方案嗎?
更新
下面是模式的一個小例子,我需要匹配:
FIND [email protected] 01/01/2010 to 10/01/2010
這裏是我當前的正則表達式:
FIND [A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4} [0-9]{1,2}/[0-9]{1,2}/[0-9]{2,4} to [0-9]{1,2}/[0-9]{1,2}/[0-9]{2,4}
這但是,如果用戶提交日期,則90%的時間都可以正常工作是通過電子郵件的信息,它可以有不同類型的格式和HTML我不感興趣。我使用HtmlAgilityPack和一個HTML標記的組合,刪除正則表達式從電子郵件中刪除所有的HTML,但即使在那我可以'在某些場合似乎會得到一場比賽。
我相信這可能是比模式匹配更爲解析相關的問題,但我想,也許有這樣做的更好的辦法...
絕對沒有問題,用一個正則表達式匹配多個空格。告訴我們這種模式,你會得到新的回報。 :) – 2010-01-26 14:10:11
@Jonas,正則表達式確實匹配空白,我已經有一個解決問題。我的問題是我遇到的情況有時信息是分開的行等,或者可能是錯誤的用戶輸入了一些額外的不需要的文字之間的空格。我希望能夠處理這些情況。 – James 2010-01-26 14:13:07
@詹姆斯,請發表您正在使用的正則表達式。 – 2010-01-26 14:14:55