这是一个难以理解的问题,但如果你有这个词:'apple'
。按字母顺序,其字母将列为['a','e','l','p','p']
因此,如果您将1
分配给'a'
,2
分配给'e'
等,您就知道这些字母的字母符合以下格式:{{1} }。
所以我试图想出如何制作一个正则表达式来搜索字母遵循该顺序的单词。这甚至可能是一个python脚本,我只需要做一次~1m的单词。
编辑更清晰:
使用上述系统,并给出一个数字,即' 14532'返回给定列表中按字母顺序排列的所有单词。
答案 0 :(得分:0)
这是一个可爱的小脑筋急转弯。
def char_order(word):
ascii_values = [ord(letter) for letter in word]
order_mapping = dict(zip(sorted(set(ascii_values)), xrange(1,len(set(ascii_values))+1)))
return [order_mapping[value] for value in ascii_values]
char_order( '苹果')
[1,4,4,3,2]