java - 正则表达式拆分包含引号的 CSV 字符串
问题描述
我有一个看起来像这样的 CSV 字符串:
"DOE, JOHN W", "35", "$12,945", "M"
我正在使用Java,所以通常我会用逗号作为分隔符分割一个csv;但是,由于某些值中有逗号,我需要一种不同的方式来拆分字符串;我对正则表达式没有太多经验,所以想知道是否有人有任何建议。
谢谢!
解决方案
虽然我同意其他评论,但最好的办法是使用 CSV 库,但在某些情况下,您可能仍需要使用正则表达式解析逗号分隔的字符串。对于这种情况,下面的正则表达式应该可以工作。
"([^"]+)"
此正则表达式将匹配引号内不是引号的任何字符。
推荐阅读
- node.js - 纱线构建消耗 100% CPU
- android - 如何隐藏默认片段 actionBar 在 android & kotlin 中创建我们自己的 actionBar
- jestjs - 如何在 Nestjs GraphQL 项目中测试请求范围数据加载器中的属性
- php - PHP GD 图像缩放质量
- android - Android Head-up 通知无法从服务中运行
- c# - 显示匹配用户输入的记录
- wallet - 如何使用 polkadotjs apis 获取交易历史记录
- javascript - 在哪些特定情况下使用拦截器?在什么情况下不能使用?
- python - 使用 pygame 和 pyinstaller 时,我收到一条错误消息,告诉我“excpected str, bytes or os.Pathlike object, not BytesIO
- python - 我运行 json 的代码,他们向我展示了“json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)”