需要的正则表达式

本文关键字:正则表达式 | 更新日期: 2023-09-27 18:16:57

全部,

C#,Regex我需要一个正则表达式,它需要提取任何用括号括起来的字母数字值。关于圆括号的注意事项:每侧可以有任意数量的圆括号,但每侧的圆括号数量匹配(见下面的Ex(。

Ex。值(从每侧括号中提取"1"的值(:

(1( ->1

((1((->1

(((1((->1

我有这个表达式,但显然它是错误的,不确定如何保存((等之间的值。

''(([^)]*)'')

需要的正则表达式

只需使用Replace((;

string myString = "(((1))) - 1";
myString = myString.Replace("(", "").Replace(")", "");

您必须使用正则表达式吗?

正如Victor在评论中所建议的那样,为什么不简单地使用呢

var number = someString.Replace("(", String.Empty).Replace(")", String.Empty);

或者,使用LastIndexOfIndexOf以及"("")"上的Substring来确定值的位置。

'(([0-9a-zA-Z]+)')

匹配包含在单圆括号中的所有字母数字字符串。如果你还想检查两边括号的数量(问题不清楚(,regex不是最好的选择。