我在R中使用正則表達式從變量中提取字符串。變量包含看起來像不同的值:正則表達式:匹配多個單詞
MEDIUM/REGULAR INSEAM
XX LARGE/SHORT INSEAM
SMALL/32" INSM
X LARGE/30" INSM
我必須捕獲兩件事:整體(小,XX大)/
之前的值和它後面的字符串(字母或數字)。我不想要" INSM
或INSEAM
部分。
正在使用的前兩個正則表達式是([A-Z]\w+) \/([A-Z]\w+) INSEAM
,最後兩個正在使用([A-Z]\w+) \/([0-9][0-9])[" INSM]
。 部分([A-Z]\w+)
只能捕獲一個單詞,所以對於MEDIUM和SMALL可以正常工作,但對於X LARGE,XX LARGE等失敗。是否有方法可以修改它以在/
字符之前捕獲兩個單詞的發生?還是有更好的方法來做到這一點?
在此先感謝!
嘗試['(W + \ w +(?:\)?)* \/*(\ w +「(?:\ w +)? )'](https://regex101.com/r/zA3bA8/1) –
感謝Wiktor,但它也捕獲INSM/INSEAM部分我已經編輯了這個問題來反映這一點 – gagandeep91
所以,甚至更簡單['(\ w +(?: \ w +)?)* \/*(\ w +)'](https://regex101.com/r/zA3bA8/3)可能會做什麼? –