我有两个字符串
"#string1" (1111) {string2}
"#string1" (1111)
我想写一个匹配三组的正则表达式。对于第一个字符串:
1 => #string1
2 => 1111
3 => string2
和第二个字符串
1 => #string1
2 => 1111
3 =>
问题是我无法弄清楚如何生成所有三个组,但如果字符串不包含花括号,则使第三个组为空。我可以将第一个字符串的所有三个组匹配,第二个字符串匹配,或者匹配两个字符串的前两个组。
我的regexp应该怎么样?
答案 0 :(得分:3)
尝试:
^"([^"]*)" \(([^)]*)\)(?: \{([^}]*)\})?$