php - php preg_split 在可能包含空格的字段中由多个空格和制表符分解行
问题描述
我需要解析以下格式的一些字符串
A 4 "AB5672HMKL" B 9500 8150 39 0000 L XFN "ProductPN"
- 空格、制表符或分隔符的多个组合
- 双引号中的内容是字符串
我想出了最简单的方法,直到今天才有效:)
$parts = preg_split('/\s+/', $line);
我发现字符串也可以包含空格!
A 4 "AB5672HMKL OLD" B 9500 8150 39 0000 L XFN "ProductPN"
现在很明显我的旧代码不起作用。有什么绝妙的主意吗?先感谢您。
解决方案
您可以使用str_getcsv()
<?php
$line = 'A 4 "AB5672HMKL OLD" B 9500 8150 39 0000 L XFN "ProductPN"';
print_r(str_getcsv($line, ' '));
推荐阅读
- android -
如何向特定客户端发送消息 - c# - 如何使用 Open XML SDK 读取 xml
- python - 在 x 轴上绘制数据框列
- php - Laravel 通过 Route 将变量从 Form 解析到 Controller 方法
- express - 如何删除这些关于 HEAD 和 OPTIONS 的招摇警告?
- rational-developer-for-i - 如何在 Rational Developer for IBM i 上进行 EDTWRD
- java - 在不知道文件目录或父文件的情况下读取文件路径
- ios - 如何在 swift 中从父子关系中的父子关系中获取子域
- node.js - NestJS:如何注册瞬态和每个 Web 请求提供程序
- android - 如何在 MVVM 架构 android 的云 Firestore 实时更新中包含源缓存