使用任何NLP库使用NER提取机场代码和航空公司代码?

使用任何NLP库使用NER提取机场代码和航空公司代码?,nlp,nltk,apache-spark,stanford-nlp,opennlp,Nlp,Nltk,Apache Spark,Stanford Nlp,Opennlp,我想从字符串中提取机场代码和航空公司代码。机场/城市代码为3个字母的阿尔法代码。航空公司代码是两个字母的字母和字母数字代码。 航空公司代码示例 AA=美国航空公司。 机场代码 肯尼迪国际机场 LGA==拉瓜迪亚机场 我有一份世界上所有机场代码和航空公司代码的清单。 我要提取的字符串类型如下 JFKAAX/BOSAACHIM100.00Q9USMEXQ125.00YLEE/CH30500.00ENDREO0.56893458 这是一个模糊的概念,因为KAA也可以被识别为机场。这是一个有效的机场代码

我想从字符串中提取机场代码和航空公司代码。机场/城市代码为3个字母的阿尔法代码。航空公司代码是两个字母的字母和字母数字代码。 航空公司代码示例

AA=美国航空公司。 机场代码 肯尼迪国际机场 LGA==拉瓜迪亚机场

我有一份世界上所有机场代码和航空公司代码的清单。 我要提取的字符串类型如下

JFKAAX/BOSAACHIM100.00Q9USMEXQ125.00YLEE/CH30500.00ENDREO0.56893458

这是一个模糊的概念,因为KAA也可以被识别为机场。这是一个有效的机场代码


如何使用NER提取这两个项目。如果NER不合适,还有其他方法吗。

我使用了简单的正则表达式,告诉我它是否合适:

In [1]: a = 'JFKAAX/BOSAACHIM100.00Q9USMEXQ125.00YLEE/CH30500.00ENDROE0.56893458'
In [4]: import re
In [15]: re.findall('(\w{3})(\d*(\.\d*)?)(\w{2})', a)
Out[15]: 
[('JFK', '', '', 'AA'),
 ('BOS', '', '', 'AA'),
 ('CHI', '', '', 'M1'),
 ('00Q', '9', '', 'US'),
 ('MEX', '', '', 'Q1'),
 ('00Y', '', '', 'LE'),
 ('CH3', '0500.00', '.00', 'EN'),
 ('DRO', '', '', 'E0'),
 ('568', '934', '', '58')]
您能提供您发布的字符串的输出内容吗?您可以用括号标记机场名称和航线,例如:
X

机场代码是否有固定模式?你能列出一个字符串示例列表吗?这些代码的来源是什么?@alvas是的,有一个固定的模式。机场代码机场代码机场代码。原始航空公司目的地。有时在AirportCode和AirlineCode或“X/”之间有十进制数字。我想知道我是否培训了一个模型(或创建了一个语料库/语料库),其中包含了所有的航线代码和城市代码。NLTK或OpenNLP是否能够提取航线代码和机场代码及其位置。这类工作做得对吗??提取地点名称(机场代码)机构名称(航空公司代码)@Harsh.Scindia我认为,NER不适合你的问题。我会使用简单的字符串操作和正则表达式。