正则表达式:2个字符之间的单个字符

时间:2014-02-06 22:30:01

标签: regex

我搜索了很多,但从来没有找到我的问题的答案,我很绝望。

我想在括号中找到所有点('.'),无论它们在哪里,还有未定义的括号数。问题是我可以得到第一个点,但我不知道如何在同一组中获得所有。

我试过了:\((?:[^\.]*)([\.])(?:[^\.]*)*\)

但是如果只有一个点就可以了。 好吗?

2 个答案:

答案 0 :(得分:4)

试试这个:

(\(|(\.)|\))

示例:http://regex101.com/r/jV5yI0

答案 1 :(得分:0)

您在找到答案时遇到问题的部分原因是确实没有答案。为了匹配任意数量的parenethesis,或任何其他需要无上下文语法的构造。正则表达式不够强大

据说有一些Regex引擎支持这种类型的匹配。虽然支持倾向于特定于引擎(例如.Net使用balancing groups)。如果你能告诉我们你正在使用什么引擎,我们可以在这里提供一个确切的答案