字符串解析为特定字符(Python)

时间:2018-11-19 06:07:18

标签: python

Vogue (@voguemagazine) • Instagram photos and videos

Fashionista (@fashionista_com) • Instagram photos and videos

The Business of Fashion (@bof) • Instagram photos and videos 我在Instagram页面的<title>标签内解析了字符串。

我需要解析屏幕名称,它是上面字符串中(@....)之前的所有字符串。

在上面的示例中,分别为VogueFashionistaThe Business of Fashion

我尝试过类似的

string.split(' ')[0].replace('\n', ''),但这只是解析第一个令牌。

1 个答案:

答案 0 :(得分:2)

模块“ re”会有所帮助。请在下面找到可以实现此目的的模式:

import re
pattern = re.compile("(.+?) \(@.*?\)")

string = "Vogue (@voguemagazine) • Instagram photos and videos"
word = pattern.findall(string)[0]

以模式“ (.+?) \(@.*?\)

  • (.+?)-在空格(“ ”)和括号之前捕获所有字符;
  • \(@.*?\)-渔获量 括号中的内容(即“ (\”和“ \)”之间的内容),例如“ @” 以及所有其他字符(“ .*?”)