我正在尝试识别用户提交的 3-4 句话段落中的专有名词。我同意该功能存在一些缺陷,因为我有一个审核团队来验证几乎所有内容。
下面是传入段落的示例。
尼克·斯威舍 (Nick Swisher) 击出詹姆斯·希尔兹 (James Shields) 击出全垒打,在第一局打出五分,周二晚上,纽约洋基队 (New York Yankees) 以 8-3 击败坦帕湾队 (Tampa Bay),在美联东区领先光芒队 (Rays) 2 1/2 场。
我希望该函数取出以下关键字/专有名词。
尼克·斯威舍、詹姆斯·希尔兹、纽约洋基队、坦帕湾队、光芒队、美联东区
我想我可以分解字符串并用空格分隔单词。然后我会检查每个单词,看看第一个字母是否大写。如果是,请将其退回。如果没有,请继续下一个单词。
但是多词关键字/专有名词呢?如何获得在已找到的第一个字母上限单词之后检查单词的功能?
所以该函数会找到 Nick,但我如何告诉它也检查下一个单词呢?因此,请检查 next 是否有上限,如果有,则返回 Nick Swisher。如果没有,就返回尼克。
更进一步,如果它是一个 3 个词的短语怎么办?找到了新的,找到了约克,我怎样才能找到洋基队呢?
尝试像这样的正则表达式:
[A-Z]{1,1}[a-z]*([\s][A-Z]{1,1}[a-z]*)*
但请务必检查区分大小写
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)