首页 > 解决方案 > 字符串的条件拆分

问题描述

我想拆分“a/b/c”类型的字符串并允许通过“\”转义。例如:

'foo/bar\/2.2/baz':
a=foo
b=bar/2.2
c=baz

有什么优雅的方法可以用'/'分割,忽略'\/'?

标签: gosplit

解决方案


无论您使用哪种语言,您都可以使用两种基本方法。

  1. 搜索所有/不紧随其后的出现\并执行拆分。
  2. \/用不包含的唯一符号替换所有实例/,然后拆分/,并再次替换唯一符号\/

从计算的角度来看,前者会更有效。

从编码复杂性的角度来看,后者可能更容易编写。


推荐阅读