当前位置: 首页 > 知识库问答 >
问题:

如何从reddit帖子标题中提取年龄和性别?

郎宏逸
2023-03-14

我试图抓取Reddit的subreddits帖子,其中有很多问题:

s1=“我[22M]和我的搭档(21F)是foo和bar”

< code>s2 = "我的(22m)和我的搭档(21m)是酒吧和foo"

我想做一个函数,可以解析每个字符串,然后返回年龄和性别对。所以:

def parse(s1):
 ....
 return [(22, "male"), (21, "female")]

从本质上讲,每个年龄/性别标签都是一个两位数,后跟f、f、m、m

共有3个答案

董飞航
2023-03-14

我们可以尝试在这里使用re.findall

s1 = "I [22m] and my partner (21F) are foo and bar"
matches = re.findall(r'(?:[\[(](\d+[MF])[\])])', s1, re.IGNORECASE)
print(matches)

[('22', 'm'), ('21', 'F')]
萧辰沛
2023-03-14

您可以将Regex与< code>re一起使用:

import re
>>> re.findall(r'(?<=\[|\()[^\)\]]+', s1)  # find text within () or []
['22M', '21F']
>>> re.findall(r'\d+', '22M') # find age
['22']
>>> re.findall(r'[fFmM]+', '22M') # find gender
['M']

这个网站真的很好学习和练习正则表达式:https://regex101.com/

常朗
2023-03-14

您可以尝试使用此正则表达式提取匹配项:

(?:[\[\(])(\d{1,2})([MF])(?:[\]\)]) /i

演示

对于python部分的东西,我推荐refindall方法:

import re

def parse(title):
    return re.findall(r'(?:\[|\()(\d{1,2})([MF])(?:\]|\))', title, re.IGNORECASE)

title = 'I [22M] and my partner (21F) are foo and bar'
matches = parse(title)

print(matches)

演示

编辑:

您可以尝试将Regex修改为此,以符合您在评论中提到的新要求:

(?:[\[\(])(\d{1,2})\s?([MF]|male|female)(?:[\]\)]) /i

演示

 类似资料:
  • 问题内容: 我有一个要根据用户的性别和年龄自动设置的Android应用。 获取用户年龄和性别的方法有哪些?(符合Google Play政策) 例如,是否可以通过Google Play服务获取这些信息? 谢谢。 问题答案: 您应该使用,您将拥有所有需要了解的有关用户的信息。(通过和(或) 编辑:例如,假设使用getGender(),您可以在此周围做一些事情:

  • 我一直在查看praw的文档,但我根本找不到哪种方法可以查看所有帖子。我想做的是浏览所有帖子 格式有点错误,我间隔了4次并粘贴,但它仍然不起作用。

  • 标题:我希望自2021年1月1日起使用Reddit ExtractoR从特定的子reddit中提取所有帖子标题。我不知道如何引导函数只查看帖子标题而不拉入任何评论。我在下面发布了当前版本的代码:

  • 问题内容: 我需要从他们的出生日期开始计算“客户”的年龄。 我尝试使用以下方法: DATEDIFF(年,customer.dob,“ 2010-01-01”); 但这似乎不起作用。 有任何想法吗?我知道这将变得简单! 谢谢 问题答案: 几种方法: 希望这对您有帮助

  • 我正在reddit API中寻找示例。我想从某个subreddit(http://www.reddit.com/r/VillagePorn)中提取图像并将它们放在网页上。我见过其他网站这样做(主要是),我不知道怎么做。 我试过,但只返回图片的缩略图。甚至链接本身也没有。 我该怎么办?

  • 我目前正在实现一个搜索功能来从wordpress搜索帖子 我想通过标签、标题来搜索文章,并以JSON的形式返回 我发现了一个将结果生成为JSON(JSON API)的插件 http://wordpress.org/plugins/json-api/other_notes/#2.1.-Core-controller-methods 在该插件中,有一个get_posts函数,可以返回支持WP_quer