我正在編程的語言是Objective C,儘管這可能對解決此問題沒有任何影響。正則表達式分組
給定0至3次出現的6, 7, 9, 11 and 13
及其修飾符b
或#
,如何編寫正則表達式以便您可以檢索每個值的分組?正則表達式甚至是最好的解決方案嗎?下面的是一些字符串需要匹配的一些例子:
Example 1: 7#9 //The groupings should be 7 #9
Example 2: 7b9#13 //The groupings should be 7 b9 #13
Example 3: b6 //The grouping should be b6
Example 4: 7#1311 //The groupings should be 7 #13 11
Example 5: 7911 //The groupings should be 7 9 11
要匹配只是一個像#13號,我試過如下:
([#b]?13|11|9|7|6)?
它爲#13場比賽,而不是#11。我很困難。
是啊,我想一個解決方案就像那樣。唯一的問題是匹配。例如,對於#139,它創建了4個組:#13,13,9和9。我如何區分我想要的羣體和我不想要的羣體? – 02fentym
我更新了我的答案。請注意,我刪除了最後一個「?」因爲它也尋找零長度匹配,這意味着總是創建一個額外的組,即使沒有匹配你的正則表達式 – IMAMBAKS
嗯......它仍然#13,9#11等失敗。 :https://regex101.com/r/nJ1dP6/1 – 02fentym