【发布时间】:2018-09-08 13:24:46
【问题描述】:
我正在尝试编写一个 regexp_replace 来用分号 (;) 替换方括号内的逗号 (,) 分隔符。
输入字符串:
gc:network,sm:Out of stock,fm:[PUT,Free store pickup today,S2H],pb:[Rollback,Test]
预期输出:
gc:network,sm:Out of stock,fm:[PUT;Free store pickup today;S2H],pb:[Rollback;Test]
任何帮助将不胜感激!
【问题讨论】:
-
CSV 字符串中可以出现多少个带括号的术语?
-
一到五个是我迄今为止在数据中看到的
-
使用
"(\\G(?!^)|\\[)([^,\\]\\[]*),"并替换为"$1$2;"。 -
@WiktorStribiżew 输出有一些问题,它消除了第二个分隔符并在开头添加了一个额外的分隔符。这是输出:
gc:network,sm:Out of stock,fm:[;PUT;Free store pickup todayS2H],pb:[Rollback;Test] -
不能,见the regex demo。您一定丢失了部分正则表达式或替换。