Javascript 格式化text()的字符串结果

Javascript 格式化text()的字符串结果,javascript,jquery,web-scraping,cheerio,superagent,Javascript,Jquery,Web Scraping,Cheerio,Superagent,您好,有人知道如何对text()给出的结果进行格式化或添加一些额外的字符串(如逗号)吗?我用它在网页抓取 以下是刮刀的片段: var makeupCatBrand = $('span.caption').children('h6').text().trim() 下面是我使用console.log(makeupCatBrand)时的结果: Jeffree Star Charlotte TilburyRCMA化妆品Charlotte TilburyRyana SuiJeffree Starsuga

您好,有人知道如何对text()给出的结果进行格式化或添加一些额外的字符串(如逗号)吗?我用它在网页抓取

以下是刮刀的片段:

var makeupCatBrand = $('span.caption').children('h6').text().trim()
下面是我使用
console.log(makeupCatBrand)
时的结果:

Jeffree Star Charlotte TilburyRCMA化妆品Charlotte TilburyRyana SuiJeffree Starsugar Pillar SuiArmour BeautyOCCSugarpillCover FXIT化妆品rms Beauty化妆间Cover FXCover FXIT化妆品Beauty Blender由TERRYKevyn AucoinBeautyBlender设计的夏洛特TilburyBY TERRYCover FXVIsertCover FXWayne GossRCMA化妆品Suiana SuiAnna SuiCover蒂尔伯里福佐卡纳酒店

我尝试将它推送到一个数组中,但所有这些都只显示为数组中的一个索引

我想为每个品牌(Jeffree Star、Charlotte Tilbury等)添加至少一个逗号,以便在推到数组之前轻松地拆分它。任何答案或想法都将不胜感激

哦,他们都有同一个班级,没有身份证,所以如果我要一个一个地刮,那就很难了

这是两个品牌的html代码(所有品牌都有相同的格式,所以我只包括一个,如果该品牌的产品有两个或更多可用的色调,唯一的变化):

  • var arr=[];
    $('span.caption')。子项('h6')。每个(函数()
    {
    arr.push($(this.text().trim());
    });
    console.log(arr.join(“,”);
    
    您必须使用
    replace()
    方法将空白替换为昏迷或昏迷,空白如下:

    makeupCatBrand.replace(" ", ",");
    
    var strArray = makeupCatBrand.split(" ");
    

    第一个参数是要替换的字符串部分,第二个参数是要替换的字符串

    您还可以使用
    split()
    方法获取字符串数组,如下所示:

    makeupCatBrand.replace(" ", ",");
    
    var strArray = makeupCatBrand.split(" ");
    

    您可以按原样拆分字符串,以便在最终结果中添加coma和whit空格。

    根据我的了解,您可以,因为您似乎有多个孩子,所以可以分别查看每个孩子

    这就是它的工作原理

    var makeupCatBrand;
    $('span.caption').children('h6').each(function(){
        makeupCatBrand += $(this).text().trim();
        makeupCatBrand += ", ";
    })
    
    var children=$('span.caption').children('h6');
    var结果数组=[];
    
    对于(var i=0;i一行,用“,”分隔):

    var makeupCatBrand = $('span.caption').children('h6').map(function(){return $(this).text()}).get().join(',');
    

    “,”可以省略,因为它是默认值。我将它放在代码中以显示可以自定义分隔符。

    添加包含该信息的HTML代码。
    $('span.caption')。children('h6')有什么作用
    return?@JoeHanink控制台日志很长,我将编辑我的帖子以显示一些关于brandsit奇怪的html代码,你从一个数组开始(选择器到h6)然后你想用逗号把它们连接起来,这样你就可以用逗号把它们分割成一个数组…@JoeHanink我以为这只是串串在一起。我想在代码通过h6时把它推到一个数组中,但我不知道怎么做。在jsbin中的什么地方?我在代码中尝试过它,但它返回了很多结果未定义与长度相同这很有帮助,但第一个品牌(undefinedJeffree Star)中有一个未定义的词,有什么想法吗?与未定义的共享html我来看看工作:)其中一个品牌的html是有问题的,所有其他品牌都有相同的html代码,所以我没有费心复制所有的html代码。我在console.log makeupCatBrand之后遇到了这个问题。不管怎样,@Christian Hedemann的回答产生了相同的结果,但没有未定义的词,但我仍然想知道是什么导致了这个问题,以供参考。这也有帮助,比我接受的答案tnx稍微好一点!回答:D
    var makeupCatBrand = $('span.caption').children('h6').map(function(){return $(this).text()}).get().join(',');