java - solr sort mengikut susunan abjad pinyin
黄舟
黄舟 2017-05-17 10:02:57
0
2
780

Terdapat medan tajuk dan saya ingin menyusunnya mengikut huruf pertama Pinyin. Terdapat kaedah dalam kaedah Solr

params.setSort("title",ORDER.asc);//排序字段,正序还是倒序

Tetapi nampaknya hasil setting ini tidak seperti yang saya inginkan Hasilnya adalah seperti berikut:

Nombor siri Tajuk Huruf awal
1 A a
2 Negara g
3 Orang r
4 Sederhana z
.

Dalam pernyataan SQL, saya boleh mengisih mengikut huruf pertama Pinyin. Saya ingin tahu sama ada saya boleh mengisih mengikut huruf pertama Pinyin dalam Solr? Apakah yang perlu saya lakukan? Bolehkah saya meminta bimbingan? ? ?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

membalas semua(2)
黄舟

Anda hanya boleh mencipta medan baharu dengan "huruf pertama tajuk" sebagai nilai sebagai medan Secara umumnya, dalam aplikasi praktikal, medan tersuai digunakan sebagai syarat pengisihan

淡淡烟草味

Ada kaedah yang agak mudah, seperti berikut:

List<String> strs = new ArrayList<>();
strs.add("中");
strs.add("啊");
strs.add("坎");
strs.add("哈");
strs.add("少");
strs.add("发");
strs.add("顶");
strs.add("擦");
strs.add("鹅");
strs.add("巴");

// 排序
strs.sort(Collator.getInstance(Locale.CHINA));
// 打印
strs.forEach(System.out::println);

Hasil

啊 // A
巴 // B
擦 // C
顶 // D
鹅 // E
发 // F
哈 // H
坎 // K
少 // S
中 // Z

Anda juga boleh menggunakan pinyin4j untuk pengisihan yang lebih kompleks

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!