0

我的代码有问题。我有一个 for 循环,以便它识别 html 文档中的所有“强”标签,然后识别 html 中给定单词的行号。对于行号匹配的任何情况,我希望它记下该行号。到目前为止我有它,但是如果在强标签所在的行之外有一个单词的实例,它会失败

url <- readLines("http://afip.gob.ar/contacto")

tagname=NULL
identifier=NULL
IDintag=NULL
rowst=NULL
rowend=NULL
data=NULL

tag <- as.matrix(grep("<strong>",url))
    if(length(tag) > 0)
    {ID <- grep("Telef|Numero",url)
        for(i in 1:length(ID))
        {IDintag[i] <- grep(ID[i],tag)
        }
        for(i in 1:length(IDintag))
        {tagname[i] <- tag[IDintag[i]]
        }
        for(i in 1:length(tagname))
        {rowst[i] <- which(grepl(tagname[i],tag))
        rowend[i] <- tag[rowst[i] + 1,]-1
        data[i] <- toString(url[tagname[i]:rowend[i]])
        }
}

这就像做梦一样,但是如果我将 url 更改为 ID 术语出现在强标签没有出现的位置,它会失败,例如:

url <- readLines("http://www2.le.ac.uk/contact")

tagname=NULL
identifier=NULL
IDintag=NULL
rowst=NULL
rowend=NULL
data=NULL

tag <- as.matrix(grep("<h2>",url))
    if(length(tag) > 0)
    {ID <- grep("Telef|Numero|phone",url)
        for(i in 1:length(ID))
        {IDintag[i] <- grep(ID[i],tag)
        }
        for(i in 1:length(IDintag))
        {tagname[i] <- tag[IDintag[i]]
        }
        for(i in 1:length(tagname))
        {rowst[i] <- which(grepl(tagname[i],tag))
        rowend[i] <- tag[rowst[i] + 1,]-1
        data[i] <- toString(url[tagname[i]:rowend[i]])
        }
}

提前致谢

4

0 回答 0