我有我需要理清的性別描述的字符串。舉例來說,如果我有以下,R中的正則表達式來區分字符串中的男性/女性
string1 = "FEMALE AND FEMALE"
string2 = "FEMALE AND MALE"
我需要改變string1
說「多名女性」,並string2
說「男性和女性」。
使用gsub
,由於MALE嵌套在FEMALE中,因此我無法編寫識別string2
與string1
不同的替換。使用「YEP」作爲一個確認字符串第一,我已經試過,沒有運氣以下,
gsub(".*FEMALE.*MALE.*", "YEP", string1)
gsub(".*FEMALE.*[^M]ALE.*", "YEP", string1)
gsub(".*FEMALE.*[^\b]MALE.*", "YEP", string1)
gsub(".*FEMALE.*(^\bMALE).*", "YEP", string1)
gsub(".*FEMALE.*MALE.*", "YEP", string2)
gsub(".*FEMALE.*[^M]ALE.*", "YEP", string2)
gsub(".*FEMALE.*[^\b]MALE.*", "YEP", string2)
gsub(".*FEMALE.*(^\bMALE).*", "YEP", string2)
我需要考慮通配符的順序,因爲不是所有的字符串將顯示爲「女性與女性」或「女性,男性「,有時他們顯示爲」1女12 MALES「或」B女2X女「等
任何想法如何處理嵌套字符串使用正則表達式?
不是很確定你在尋找附加字符串的方式,你添加在你的文章的底部附近,但你可以使用像'(?:(((??1 \ D)\ d +)( ?:\ s * [az] \ b \ s *)* \ s +)?(\ b(?:FE)?MALES?\ b)'獲取您要查找的所有數據。 – ctwheels