oe/housenum-be-r-parser

比利时门牌号码的分割和合并器

0.1.0 2014-07-25 09:23 UTC

This package is not auto-updated.

Last update: 2024-09-24 02:13:43 UTC


README

一个小型库,用于合并和分割比利时门牌号码序列。

https://travis-ci.org/OnroerendErfgoed/php-housenum-be-r-parser.png?branch=master https://coveralls.io/repos/OnroerendErfgoed/php-housenum-be-r-parser/badge.png?branch=master

描述

将比利时房屋号码的范围分割成单个号码,反之亦然。

安装

HousenumBErParser可以通过composer进行安装

//composer.json
{
    "require": {
        "oe/housenum-be-r-parser": "dev-master"
    }
}

使用方法

分割门牌号码范围

<?php
use OE\HousenumBErParser\Facade;

$facade = new Facade();

echo "Splitting 15-21\n";

$split = $facade->split('15-21');

foreach($split as $hnr) {
    echo $hnr . "\n";
}

合并门牌号码

<?php
use OE\HousenumBErParser\Facade;

$facade = new Facade();

echo "Merging 17/1, 15, 20 bus C, 20 bus B, 17/3, 17/2, 20 bus A\n";

$merge = $facade->merge('17/1, 15, 20 bus C, 20 bus B, 17/3, 17/2, 20 bus A');

echo $facade->numbersToString($merge) . "\n";

门面可以以三种不同的方式处理错误。它可以忽略错误(处理错误的默认方式)。在这种情况下,尽可能多地保留无效输入。因此,当尝试分割字符串“25, something”时,输出结果将是“25, something”。

第二种选择是删除无效输入。这可以通过将Reader::ERR_REMOVE_INVALID_INPUT传递给门面构造函数来实现。在这种情况下,尽可能多地删除无效输入。因此,当尝试分割字符串“25, something”时,输出结果将是“25”。

第三种也是最后一种选择是抛出异常。这可以通过将Reader::ERR_EXCEPTIONS传递给门面构造函数来实现。在这种情况下,无效输入将触发一个异常。因此,当尝试分割字符串“25, something”时,将抛出一个异常。

其他语言

有一个类似的库执行相同的操作,但用Python编写。