Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于与整个字符串匹配的lookahead正则表达式在R中追加单元格_R_Regex_Lookahead - Fatal编程技术网

基于与整个字符串匹配的lookahead正则表达式在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://组成,我想

我对R和正则表达式还是新手,但我正在努力实现以下目标:;假设我有一个如下排序的数据表:

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$URL
URL.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进行拍摄。