com.supermap.analyst.addressmatching

类 AddressMatchSetting



  • public class AddressMatchSetting
    extends Object
    中文地址模糊匹配设置类。

    中文地址模糊匹配设置类主要用来对中文地址模糊匹配操作进行一些设置,包括设置地址词典,参与中文地址模糊匹配的数据集以及参与匹配的字段集合。

    示范代码:
    请参见 AddressMatch 类的示例。
    • 构造器详细资料

      • AddressMatchSetting

        public AddressMatchSetting()
        默认构造函数,构造一个新的 AddressMatchSetting 对象。
      • AddressMatchSetting

        public AddressMatchSetting(AddressMatchSetting addressMatchSetting)
        根据指定的 AddressMatchSetting 对象构造一个与其完全相同的新对象。
        参数:
        addressMatchSetting - 指定的 AddressMatchSetting 对象。
    • 方法详细资料

      • getDatasets

        public DatasetVector[] getDatasets()
        返回用于中文地址模糊匹配的数据集集合,即待匹配的中文地址将在这些数据集中搜索与其匹配的内容。
        返回:
        用于中文地址模糊匹配的数据集集合。
      • getFields

        public String[] getFields()
        返回用来做中文地址模糊匹配的字段集合,即待匹配的中文地址将在参与匹配的数据集中的这些指定的字段中搜索与其匹配的项。
        返回:
        用来做中文地址模糊匹配的字段集合。
        默认值:
        默认值为空的 String[] 对象。
      • getDictionaryFile

        public String getDictionaryFile()
        返回地址词典文件的全路径,包括文件夹目录和文件名。有关地址词典方面的内容,请参见 AddressDictionary 类。

        分词是把中文的汉字序列切分成有意义的词,比如说:我是一个学生,那么分词后的结果是:我/是/一个/学生。地址词典是这些有意义的词的集合。

        注:地址词典

        英文是以词为单位,词与词之间用空格隔开,例如【Thank you.】 计算机很容易通过空格来识别 you 是一个单词。而中文是以字为单位,通过字组成的句子来表述意思。例如,【我爱北京天安门】,计算机很难知道【天安门】是一个不能拆分的词,这就需要我们进行分词。把中文的汉字序列切分成有意义的词的过程,就是中文分词。而中文分词是基于地址词典进行的,地址词典就是一些有意义的词的集合。中文分词的准确与否,直接影响到中文地址模糊匹配结果的正确性和相关度的排序。

        举例说明:【北京天安门】,如果地址词典里面有“北京”、“天安门”等词,则【北京天安门】就会被分词为“北京/ 天安门”。 只有输入 “北京”或“天安门”这两个词中的一个或两个都作为关键词进行搜索,“北京天安门”才能被匹配并搜索出来。

        返回:
        地址词典文件的全路径。
        默认值:
        默认值为空。
      • setDictionaryFile

        public void setDictionaryFile(String value)
                               throws FileNotFoundException
        设置地址词典文件的全路径,包括文件夹目录和文件名。有关地址词典方面的内容,请参见 AddressDictionary 类。

        分词是把中文的汉字序列切分成有意义的词,比如说:我是一个学生,那么分词后的结果是:我/是/一个/学生。地址词典是这些有意义的词的集合。

        注:地址词典

        英文是以词为单位,词与词之间用空格隔开,例如【Thank you.】 计算机很容易通过空格来识别 you 是一个单词。而中文是以字为单位,通过字组成的句子来表述意思。例如,【我爱北京天安门】,计算机很难知道【天安门】是一个不能拆分的词,这就需要我们进行分词。把中文的汉字序列切分成有意义的词的过程,就是中文分词。而中文分词是基于地址词典进行的,地址词典就是一些有意义的词的集合。中文分词的准确与否,直接影响到中文地址模糊匹配结果的正确性和相关度的排序。

        举例说明:【北京天安门】,如果地址词典里面有“北京”、“天安门”等词,则【北京天安门】就会被分词为“北京/ 天安门”。 只有输入 “北京”或“天安门”这两个词中的一个或两个都作为关键词进行搜索,“北京天安门”才能被匹配并搜索出来。

        参数:
        value - 地址词典文件的全路径。
        抛出:
        FileNotFoundException - 当地址词典文件不存在时抛出 FileNotFoundException 异常。
      • addSearchData

        public int addSearchData(DatasetVector dataset,
                                 String addressField)
        添加用于地址匹配的数据集。用于地址匹配的数据集即为待匹配的中文地址将在这些数据集中搜索与其匹配的内容。
        参数:
        dataset - 待添加的用于中文地址模糊匹配的数据集。
        addressField - 用于中文地址模糊匹配的字段。
        返回:
        新添加的数据集在用于中文地址模糊匹配的数据集集合中的索引值。
      • setSearchData

        public boolean setSearchData(int index,
                                     DatasetVector dataset,
                                     String addressField)
        用指定的数据集替换指定索引处的用于中文地址模糊匹配的数据集。
        参数:
        index - 要替换的数据集的索引,即在用于中文地址模糊匹配的数据集集合中的索引值。
        dataset - 指定的数据集。
        addressField - 指定的用来做匹配的字段。
        返回:
        设置成功返回 true,否则返回 false。
      • removeSearchData

        public boolean removeSearchData(int index)
        移除指定索引的数据集。
        参数:
        index - 要移除的数据集的索引,即在用于中文地址模糊匹配的数据集集合中的索引值。
        返回:
        移除成功返回 true,否则返回 false。
      • clearSearchData

        public void clearSearchData()
        清除所有用于中文地址模糊匹配的数据集。

Copyright © 2021–2024 SuperMap. All rights reserved.