12306APP是可以匹配出一个城市所有站点的;12306网页端则不可以。
目前12306APP输入城市后支持显示所有同城站;输入精确站名(且与城市不同名)则可以直接显示出城市名和精确站名;输入含有站名的字也可以进行匹配。12306网页端仍旧是根据输入内容向后逐字匹配的机制。这里将以武汉、上海两个能涵盖搜索不同结果的城市举例,最后再回答题主重庆市的问题。
先看12306网页端,网页端的匹配机制非常简单,就是依次往后匹配,因此返回的车站都有相同的前缀,但有可能是不同市的。
例1:武汉市的站名搜索。武汉的主要客运站有武汉、汉口、武昌、武汉东。
输入武汉,匹配结果是武汉、武汉东,汉口和武昌并未匹配到。

输入武昌,匹配结果只有武昌,汉口、武汉、武汉东三站并未匹配到;同理,输入汉口也只能匹配到汉口。因此网页端只能逐字向后匹配,无法返回同城站。

例2:上海市的站名搜索。上海的主要客运站有上海、上海虹桥、上海南;上海市松江区有客运站松江、松江南。
输入上海,匹配结果是上海、上海南、上海虹桥、上海西,非主要客运站上海西也显示了出来。

输入松江,匹配结果有松江河(吉林省白山市)、松江(上海市松江区)、松江南(上海市松江区)、松江镇(吉林省延边朝鲜族自治州)。可以发现,系统实际上是把所有从开始能匹配到松江的结果全部返回了,而且不提示城市。

如果输入“江”字,返回的结果是所有以“江”开头的车站,结果中没有“松江”,因此网页端不支持中间含有某个字的搜索。

再看12306APP。
例3:武汉市的站名搜索。
输入武汉,返回城市“武汉”,以及武汉市的所有车站(含城铁站),优先按照逐字匹配机制(先给出武汉、武汉东),剩下的同城站按照拼音顺序排列。

上述排序导致了武昌站排在非常靠后的位置。

输入汉口,返回城市“武汉”,以及车站汉口;武昌站也是同理(这里不再贴图)。因此输入精确站名后(站名与城市名不同),APP只会返回城市名和精确站。

例4:上海市的站名搜索。
输入上海,返回城市“上海”,以及上海市的所有车站,包括了松江区的松江站、松江南站(不含城铁站,因为金山铁路不在12306上售票),优先按照逐字匹配机制(先给出上海、上海虹桥、上海西、上海南),剩下的同城站按照拼音顺序排列。

输入松江,返回城市上海,车站松江、松江南;城市白山,车站松江河;城市延边,车站松江镇。添加了城市名的标注就比网页端直观的多,因为很多名称相似的车站不一定在同一个地方,标注出城市有助于旅客正确选择车站。

输入江,优先返回了以江开头的城市和车站(红框部分);而且匹配到了含有江字的城市和车站(江津区、镇江市等,绿框部分),因此APP支持中间字搜索。

至此我们弄清楚了网页端和APP的搜索机制,那么就可以来回答问题了。重庆的主要客运站有重庆北、重庆西、沙坪坝。
先看网页端,输入重庆,匹配结果是重庆北、重庆、重庆南、重庆西。可以看到以系统以“重庆”二字开头往后匹配,显然漏掉了重庆市区的主要客运站“沙坪坝站”。
输入沙坪坝,只能匹配到“沙坪坝站”。
再看APP。输入重庆,返回城市“重庆”,以及重庆的五个同城站重庆、重庆北、重庆南、重庆西、沙坪坝。
输入沙坪坝,此时APP因为是精确搜索,在返回城市“重庆”的同时,只返回了沙坪坝一个车站。
以上,希望能解答题主的疑问。
免责声明:文章内容来自互联网,版权归原作者所有,本站仅提供信息存储空间服务,真实性请自行鉴别,本站不承担任何责任,如有侵权等情况,请与本站联系删除。
转载请注明出处:12306搜城市为什么不出该城市的所有站点,比如搜目的地重庆就只有西站和北站,但其他站也在线路上? https://www.7ca.cn/zsbk/zt/18190.html