我从PDF中提取了一份调查打印输出,其中包含以下格式的问题和答案:
“ 15。我对社交场合充满信心。(有时)16.我感到孤独。(经常)17.我感到精力充沛。(从不)”
我没有自己的代码,因为我真的不知道从哪里开始。
我想要的是一个正则表达式,它将返回数字和带括号的响应之间的问题。对于前者,我只想:
“我对社交场合充满信心。”,“我感到孤独。”,“我充满活力。”
答案 0 :(得分:4)
您可以将以下正则表达式与g
标志一起使用:
(?<!\()\b[a-zA-Z ]+\b\.(?![\)])
正则表达式可视化:
每个正则表达式元素的说明:
(?<!\()
-负向后看
\b
-在单词边界处断言位置
[a-zA-Z ]+
-匹配列表中存在的单个字符一次或无限次
\b
-在单词边界处断言位置
\.
-完全匹配字符.
(?![\)])
-前瞻
g
标志-第一次比赛后不返回
匹配结果:
我对社交场合充满信心。
我感到孤独。
我感到精力充沛。
答案 1 :(得分:1)
在这里,使用.split('.')
可能会更好,而不是使用正则表达式。这是假设您拥有的信息是字符串格式。如果没有,请尝试包含有关提取数据的更多信息。
您可以了解如何使用split()
方法here
祝你好运!