我是新來的RegEx,我覺得它很混亂,所以我想要一個簡單的例子來說明如何提取同一類型的多個字符串。使用正則表達式提取多個字符串
比方說,我們有一個隨機字符串,我想要捕捉包圍「###」的任何東西。所以我認爲這種模式看起來像這樣:
string str = "dsad###hi###vdkv324da###dog###fs";
Regex pattern = new Regex("###.+###");
如何匹配和存儲多個事件?而更大的問題 - 在我這樣做後,我會留下「### hi ###」和「### dog ###」,那麼我如何從那些中提取「hi」和「dog」 ?
首先,你必須定義您的要求。當你說_什麼是包圍「###」_這是不明確的。例如,在你的示例字符串中,整個'hi ### vdkv324da ### dog'部分位於兩個'###'s之間。那麼你的解決方案是什麼?你是否在使用兩個相鄰的'###'開啓和關閉部分? – Sach
有一個很好的工具來測試正則表達式:https://regex101.com/雖然,請記住,.NET C#正則表達式有點特定,所以有些令牌可能無法正常工作。 –
正則表達式並不總是最好的使用方法。在這種情況下,string()方法將起作用:string [] split = str.Split(new string [] {「###」},StringSplitOptions.RemoveEmptyEntries); – jdweng