从文本列中提取页数
Extract Number of pages from a text column
我有一个文本列,其中包含如下评论:
- 6 页,LaTeX,无数字
- 19 页,乳胶,4 个数字作为 uuencoded postscript 文件
- 受邀在“VII Marcel Grossman 广义相对论会议”上发表演讲 - 斯坦福大学,1994 年 7 月。14 页,乳胶,五位数,可应要求提供。
- 15 页 Phyzzx
我想从中提取页数。还有一些行没有任何评论或没有与页面相关的信息。所以这些可能应该是 NA。
只要每个评论只有一个页数,这就有效。
import re
comments = [
"6 pages, LaTeX, no figures",
"112 cucumber",
"19 pages, latex, 4 figures as uuencoded postscript files",
"Invited Talk at the ``VII Marcel Grossman Meeting on General
Relativity'' - Stanford, July 1994. 14 pages, latex, five figures,
which will be available upon request.",
'15 pp. Phyzzx']
def page_num_extract(text:list) -> list:
out = []
for line in text:
pages = re.findall("\d* pages|\d* pp\.", line)
pages = re.findall("\d*", str(*pages))[0]
if not pages:
pages = "NA"
out.append(pages)
return out
page_num_extract(评论)
['6', 'NA', '19', '14', '15']
我有一个文本列,其中包含如下评论:
- 6 页,LaTeX,无数字
- 19 页,乳胶,4 个数字作为 uuencoded postscript 文件
- 受邀在“VII Marcel Grossman 广义相对论会议”上发表演讲 - 斯坦福大学,1994 年 7 月。14 页,乳胶,五位数,可应要求提供。
- 15 页 Phyzzx
我想从中提取页数。还有一些行没有任何评论或没有与页面相关的信息。所以这些可能应该是 NA。
只要每个评论只有一个页数,这就有效。
import re
comments = [
"6 pages, LaTeX, no figures",
"112 cucumber",
"19 pages, latex, 4 figures as uuencoded postscript files",
"Invited Talk at the ``VII Marcel Grossman Meeting on General
Relativity'' - Stanford, July 1994. 14 pages, latex, five figures,
which will be available upon request.",
'15 pp. Phyzzx']
def page_num_extract(text:list) -> list:
out = []
for line in text:
pages = re.findall("\d* pages|\d* pp\.", line)
pages = re.findall("\d*", str(*pages))[0]
if not pages:
pages = "NA"
out.append(pages)
return out
page_num_extract(评论)
['6', 'NA', '19', '14', '15']