我正在處理將一個正則表達式應用於字符串並返回第一個匹配項的代碼片段。我無權修改代碼以返回所有匹配,也無法實現替代代碼。正則表達式 - 將所有匹配項作爲單個匹配項返回
我有以下的示例目標串:
用戶A,用戶B ,,用戶C ,, userd,usere,userf,
這是來自多個源連接逗號分隔用戶名列表其中一些空白,導致一些地方出現兩個逗號。我試圖編寫一個正則表達式,它將返回除特定值之外的所有逗號分隔的用戶名。
例如,考慮以下表達式:
[^,]\w{1,},(?<!(userb|userc|userd),)
這導致三個匹配:
用戶A,
usere,
userf,
有什麼方法可以將這些結果作爲單個匹配而不是匹配集合來獲得包含文字'usera,usere,userf'的單個比賽?
如果我可以用任何語言編寫代碼,這將是微不足道的,但我只限於輸入目標字符串和模式,我需要一個匹配,除了我是遺漏。我不確定這是否可能,我用正則表達式處理的所有內容都涉及處理匹配集合中的多個項目。
這是一個正則表達式教程的例子。這張圖片顯示了我想要的三場比賽,但我的要求是在單場比賽中輸入文字,而不是三場單獨的比賽。
EDIT1: 爲了闡明此票證具體旨在解決僅使用正則表達式語法的使用情況。在代碼中解決這個問題是微不足道的,但僅僅使用正則表達式來解決這個問題是需要考慮到執行代碼是我不想反向工程,包裝或替換的第三方產品的一部分。
您使用什麼語言? –
正則表達式不是一種完整的語言;在沒有任何支持代碼的情況下獲得你想要的東西可能非常困難。 – StilesCrisis
正則表達式正在使用JAVA進行處理,因此它將遵循JAVA的處理規則,但我無法訪問底層代碼來修改它。這是具有非常具體輸入的實用程序的一部分,我無法修改@Eric的 – Eric