我想用非字母数字字符(除了一个特定的模式)来分割sting。
例子:
string_1 = "section (ab) 5(a)"
string_2 = "section -bd, 6(1b)(2)"
string_3 = "section - ac - 12(c)"
string_4 = "Section (ab) 5(1a)(cf) (ad)"
string_5 = "section (ab) 5(a) test (ab) 5 6(ad)"
我想以某种方式拆分这些字符串,以便得到下面的输出
["section", "ab", "5(a)"]
["section", "bd", "6(1b)(2)"]
["section", "ac", "12(c)"]
["section", "ab", "5(1a)(cf)", "ad"]
["section", "ab", "5(a)", "test", "ab, "5", "6(ad)"]
更准确地说,我想把每一个非字母数字字符,除了这个 \d+([\w\(\)]+)
图案。
2条答案
按热度按时间46qrfjad1#
你可以用
查看regex演示。
细节
\d+[\w()]+
-1+位,然后1+字或(
或者)
字符|
-或者\w+
-1+字字符。在elasticsearch中,使用
nzkunb0c2#
它可以在这个regex里面实现
findall
使用:正则表达式演示
代码: