regex - 用不在括号内的逗号分隔?
问题描述
我想用不在 Excel VBA 括号内的逗号分隔。
我需要用于拆分字符串的 VBA 脚本
前任:
myString = "ab, cd(c1,c2,d1), ef, gh ,ij(i1,i2,j1,j2)"
E 需要输出如下:
[
ab,
cd(c1,c2,d1),
ef,
gh,
ij(i1,i2,j1,j2)
]
解决方案
假设您的括号始终是单嵌套的,那么在以下正则表达式上拆分应该可以:
,(?![^(]*\))
这使用了一个否定的前瞻,它断言我们不会在一个逗号之后分割,之后 a)
没有首先遇到一个(
,这意味着正在打开另一个组。
我不知道 VBA 是否会在其正则表达式中支持前瞻。检查下面的演示以查看该模式是否有效。
演示
推荐阅读
- excel - VBA 模块从一个用户的 .xls 文件中删除,而不是另一个用户
- google-oauth - Google oauth 范围在身份验证期间更改,但范围相同
- java - 由另一个实体分组
- python - 将 TensorFlow 模型转换为 TFLITE 格式
- python - 当列表中的红色后跟绿色时,为什么我的 for 循环不改变颜色?
- bluesnap - 创建订单状态码 400 - 服务器错误
- python - Python tkinter 范围标签不显示
- c++ - 函数中的 C++ 和号
- c++ - std::string 类继承和繁琐的 c++ 重载解析 #2
- hibernate - Hibernate 与聚合的关系