You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PHP从制表符分隔TXT文件中获取输入邮编对应的地点名称?

处理带空格的邮编并匹配对应地点名称

我来帮你搞定这个问题!首先你的输入邮编' 2069 '带了前后空格,第一步得先把这些空格去掉,不然可能匹配不到文件里的邮编。接下来根据你常用的编程语言,给你几个实用的实现方案:

核心思路

  • 清理输入邮编的前后空格,确保和文件里的邮编格式一致
  • 读取制表符分隔的TXT文件,逐行检查第1列的邮编
  • 找到匹配项后提取第2列的地点名称

具体实现示例

PHP 版本

// 先把输入的空格去掉,得到干净的邮编
$cleaned_zip = trim($input); // 现在值为'2069'

// 打开你的邮编文件,替换成实际文件路径
$zipFile = fopen('zip_locations.txt', 'r');
$targetLocation = null;

while (($row = fgetcsv($zipFile, 0, "\t")) !== false) {
    // 顺便清理文件里邮编的空格,避免文件内的邮编带空格导致匹配失败
    $fileZip = trim($row[0]);
    if ($fileZip === $cleaned_zip) {
        $targetLocation = trim($row[1]); // 提取地点并清理可能的空格
        break; // 找到匹配项就停止循环,提升效率
    }
}

fclose($zipFile);

// 输出结果
if ($targetLocation) {
    echo "找到对应地点:{$targetLocation}";
} else {
    echo "未查询到该邮编的对应地点";
}

Python 版本

input_zip = ' 2069 '
# 清理输入的前后空格
cleaned_zip = input_zip.strip()

target_location = None

# 打开文件,替换成你的实际文件路径
with open('zip_locations.txt', 'r', encoding='utf-8') as f:
    for line in f:
        # 跳过空行
        line = line.strip()
        if not line:
            continue
        # 按制表符分割行内容
        zip_parts = line.split('\t')
        # 确保行有至少两列内容
        if len(zip_parts) >= 2:
            file_zip = zip_parts[0].strip()
            if file_zip == cleaned_zip:
                target_location = zip_parts[1].strip()
                break  # 找到匹配项就退出循环

# 打印结果
if target_location:
    print(f"对应的地点名称是:{target_location}")
else:
    print("没有找到该邮编对应的地点")

Bash Shell 版本

# 原始输入邮编
input_zip=' 2069 '
# 清理前后空格
cleaned_zip=$(echo "$input_zip" | xargs)

# 使用awk匹配,制表符分隔,找到第1列等于清理后邮编的行,输出第2列
target_location=$(awk -v zip="$cleaned_zip" -F '\t' '{gsub(/^[ \t]+|[ \t]+$/, "", $1); if ($1 == zip) {gsub(/^[ \t]+|[ \t]+$/, "", $2); print $2; exit}}' zip_locations.txt)

# 输出结果
if [ -n "$target_location" ]; then
    echo "对应的地点名称:$target_location"
else
    echo "未找到该邮编的对应地点"
fi

内容的提问来源于stack exchange,提问作者kanarifugl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 09:06:12