我有一个网址列表,如下所示: my_full_urls_list
['class' => 'yii\rest\UrlRule', 'controller' => 'v1/lkup-access-profile','extraPatterns' => ['POST create' => 'create']],
对于上一个示例,我知道域名:
sudo apt-get install libgmp-dev
基于此,我希望每个域只保留一个值。输出示例:
[1] "http://www.mypage1.com"
[2] "http://www.mypage1.com/produce"
[3] "http://www.mypage1.com/contact"
[4] "http://www.mypage2.com"
[5] "http://www.mypage2.com/other"
[6] "http://www.mypage2.com/rye"
[7] "http://www.mypage3.com/contact"
[8] "http://www.mypage3.com/buy"
[9] "http://www.mypage5.com/info"
我拥有的是我想要的域名列表,并与my_full_urls_list进行比较我希望每个域名只保留一个域名。
http://www.mypage1.com
http://www.mypage2.com
http://www.mypage3.com
http://www.mypage5.com
以及以前的dput格式的主网址列表:
"http://www.mypage1.com/produce"
"http://www.mypage2.com/other"
"http://www.mypage3.com/contact"
"http://www.mypage5.com/info"
答案 0 :(得分:2)
我们使用正则表达式外观将匹配.com
的一个或多个字符与字符串末尾匹配,并将其替换为''
。然后,我们match
使用“域名”,将其用作分组变量,以便从“网址”获取1个sample
观察值。
url1 <- sub("(?<=\\.com).*$", '', urls, perl=TRUE)
tapply(urls, match(url1, domains), FUN= sample, 1)
如果有.com
,.net
等,我们可以匹配字符串末尾的\
后跟单词(\\w+
)并替换为{ {1}}。其余的和以前一样。
''