如何将所有6个字母的拉丁字词提取到列表中?


1

我需要在列表中包含全部6个字母Latin words

我还想在单词列表中使用跟随模式Xyzzyx的单词。

我已经使用了小Python。

5

正则表达式是你的朋友,我的朋友!这是功课吗?

下面是这接近一个例子,你想要什么:

egrep "^\w{6}$" /usr/share/dict/words | egrep "(.)(.)(.)\3\2\1" 

我会离开它作为一个练习为读者创造一个拉丁词列表,并在第二个正则表达式处理大写的X ,但总的想法应该是明显的。

  0

我以为你是他的朋友,而不是正则表达式! :P 22 2月. 092009-02-22 15:22:55

  0

Python是否适合将拉丁语拼写成列表? 22 2月. 092009-02-22 15:26:23

  0

我确定它是。任何具有内置正则表达式引擎的语言都应该能够做到。 22 2月. 092009-02-22 15:28:13

  0

谢谢!我设法直接在终端中找到这些词,没有Python代码:) 22 2月. 092009-02-22 18:01:14

  0

不客气!当你找到最适合这项工作的工具时,总是很好。 :-) 22 2月. 092009-02-22 20:33:01


0

请注意,除非您的列表包含所有名词的变元和动词的变体,否则您的程序不会产生任何类似的所有拉丁语中的六个字母的单词。

例如,您的列表可能只包含名词的主格。其主格为五个字母的第一格名词(例如mensa)具有六个字母的格格情况(例如mensae)。所有的变格都包含了名词长度与主格不同的情况。

对动词来说更是如此,每个动词都有(至少)四个主要部分,其长度可以变化,其变形也可以有不同的长度。所以lego的第一人称单数现在式是四个字母长,但其不定式legere是六; porto是第一人称单数中的五个,而第二人称单数中的六个,portas

我想原则上可以建立一个引擎,它可以通过编程方式拒绝并且给出足够的关于每个单词的元信息的拉丁单词。 Python实际上是一种非常好的语言。但是,与编写正则表达式相比,这是一个更大的任务。