目前我有一个输入框,可以检测URL并解析数据.
所以现在,我正在使用:
var urlR = /^(?:([A-Za-z]+):)?(\/{0,3})([0-9.\-A-Za-z]+)
(?::(\d+))?(?:\/([^?#]*))?(?:\?([^#]*))?(?:#(.*))?$/;
var url= content.match(urlR);
Run Code Online (Sandbox Code Playgroud)
问题是,当我输入一个URL时www.google.com,它不起作用.当我进入时http://www.google.com,它正在工作.
我的正则表达式不是很流利.谁能帮我?
考虑以下pandas数据帧:
In [114]:
df['movie_title'].head()
?
Out[114]:
0 Toy Story (1995)
1 GoldenEye (1995)
2 Four Rooms (1995)
3 Get Shorty (1995)
4 Copycat (1995)
...
Name: movie_title, dtype: object
Run Code Online (Sandbox Code Playgroud)
更新:
我想用正则表达式提取电影的标题.所以,让我们使用以下正则表达式:\b([^\d\W]+)\b.所以我尝试了以下方法:
df_3['movie_title'] = df_3['movie_title'].str.extract('\b([^\d\W]+)\b')
df_3['movie_title']
Run Code Online (Sandbox Code Playgroud)
但是,我得到以下内容:
0 NaN
1 NaN
2 NaN
3 NaN
4 NaN
5 NaN
6 NaN
7 NaN
8 NaN
Run Code Online (Sandbox Code Playgroud)
有关如何从pandas数据框中的文本中提取特定功能的任何想法吗?更具体地说,如何在一个全新的数据框中提取电影的标题?例如,所需的输出应为:
Out[114]:
0 Toy Story
1 GoldenEye
2 Four Rooms
3 Get Shorty
4 Copycat
...
Name: movie_title, dtype: object
Run Code Online (Sandbox Code Playgroud) 我有一个字符串列表:
content
01/09/15, 10:07 - message1
01/09/15, 10:32 - message2
01/09/15, 10:44 - message3
Run Code Online (Sandbox Code Playgroud)
我想要一个数据框,如:
date message
01/09/15, 10:07 message1
01/09/15, 10:32 message2
01/09/15, 10:44 message3
Run Code Online (Sandbox Code Playgroud)
考虑到列表中的所有字符串都以该格式开头,我可以分开-,但我宁愿寻找一种更聪明的方法.
history = pd.DataFrame([line.split(" - ", 1) for line in content], columns=['date', 'message'])
Run Code Online (Sandbox Code Playgroud)
(之后我会将日期转换为日期时间)
任何帮助,将不胜感激.