project anna The Analytical Computable Dictionary
Query (sample queries):
Tìm các từ có hai âm tiết, trong đó âm tiết thứ hai dùng tất cả các chữ cái của âm tiết thứ nhất

dict.search('
  (w.slen() == 2) 
  && (w.syls(0).toAscii().string() != w.syls(1).toAscii().string()) 
  && (w.syls(0).toAscii().anagram() == w.syls(1).toAscii().anagram()
)')

Tìm các từ mà nếu bỏ dấu thì viết xuôi ngược như nhau

dict.search('
  (w.len() >= 2)
  && (w.toAscii().joinSyls().reverse() == w.toAscii().joinSyls().string()) 
', 100)


Tìm 100 từ có 3 âm tiết, âm tiết đầu tiên bắt đầu bằng "d"

dict.search('
  (w.slen() == 3) 
  && (w.syls(0).head().string() == "d")
', 100)

Tìm các từ có một âm tiết, độ dài lớn hơn 6 ký tự

dict.search('
  (w.slen() == 1) 
  && (w.len() > 6)
')

Tìm các từ có âm tiết đầu có dấu ~ âm tiết thứ hai có dấu .

dict.search('
  (w.slen() == 2) 
  && (w.syls(0).getTone() == "~")
  && (w.syls(1).getTone() == ".")
')

Tìm 100 từ có 2 âm tiết bắt đầu bằng d

dict.search('
  (w.slen() == 2) 
  && (w.syls(0).head().string() == "d")
  && (w.syls(1).head().string() == "d")
', 100)

Tìm các từ, sau khi loại bỏ dấu, thì có đuôi "ương"

dict.search('
  (w.slen() == 2) 
  && (w.syls(1).removeTones().tail().string() == "ương")
')

Tìm 100 từ có 2 âm tiết sau khi loại bỏ dấu, thì mỗi âm tiết đều có đuôi "e"

dict.search('
  (w.slen() == 2)
  && (w.syls(0).removeTones().tail().toAscii().string() == "e") 
  && (w.syls(1).removeTones().tail().toAscii().string() == "e")
', 100)


Tìm 1000 từ có 2 âm tiết mà âm tiết thứ hai có 1 ký tự và hai âm tiết cùng dấu '

dict.search('
  (w.slen() == 2) 
  && (w.syls(1).len() == 1)
  && (w.syls(0).getTone() == w.syls(1).getTone()) 
  && (w.syls(0).getTone() == "\'")
', 1000)