基于与整个字符串匹配的lookahead正则表达式在R中追加单元格
我对R和正则表达式还是新手,但我正在努力实现以下目标:;假设我有一个如下排序的数据表:基于与整个字符串匹配的lookahead正则表达式在R中追加单元格,r,regex,lookahead,R,Regex,Lookahead,我对R和正则表达式还是新手,但我正在努力实现以下目标:;假设我有一个如下排序的数据表: Title | URL stackoverflow.com | https://stackoverflow.com google.com | http:// youtube.com | https://youtube.com overclock.net | https:// 如果URL仅由http://或https://组成,我想
Title | URL
stackoverflow.com | https://stackoverflow.com
google.com | http://
youtube.com | https://youtube.com
overclock.net | https://
如果URL
仅由http://
或https://
组成,我想在URL
列中添加单元格,并在Title
列中添加相应的值,因此所需的输出如下所示:
Title | URL
stackoverflow.com | https://stackoverflow.com
google.com | http://google.com
youtube.com | https://youtube.com
overclock.net | https://overclock.net
为此,我尝试将sub
函数与lookahead regex结合使用,如下所示:
Title | URL
stackoverflow.com | https://stackoverflow.com
google.com | http://google.com
youtube.com | https://youtube.com
overclock.net | https://overclock.net
dt$URLURL.col为什么要前瞻?应该是^https?://$
足够好吗?这里没有必要使用正则表达式,如果其他(dt$URL%在%c中(“http://”,“https://”)、paste0(dt$URL,dt$Title),dt$URL)
会同意@Aurèle的答案。这里不需要正则表达式。关于正则表达式匹配,最好是使用能够进行正则表达式搜索的编辑器(例如,在UbuntuGedit中-通过Ctrl-H激活regex并选中“正则表达式…”,然后您可以尝试所有的regex模式-因为编辑器将以交互方式显示哪些表达式匹配或不匹配。如果您想试验regex并使用RStudio IDE,有一个regexplain插件。我还没有尝试过它b。)不过看起来很期待你们两个的回答!@Aurèle,谢谢你的regexplain addin;我一直在寻找类似的东西,因为我在黑暗中用我的RegEx进行拍摄。