c# - 如何使用 .NET 获取位于两个 '{' 括号'}' 之间的文本字符串?

标签 c# regex string substring

我有一个字符串 "Item Name {Item Code} {Item ID}",我想提取第一次出现的 {} 之间的文本,即 {商品代码} , 我用过

Regex.Match( "Item Name {Item Code} {Item ID}", @"\{([^)]*)\}").Groups[0].Value

但我得到了 "{Item Code} {Item ID}"

我该怎么做?

最佳答案

\{([^)]*?)\}")

让它变得懒惰,它会起作用

恕我直言,使用这样的正则表达式:\{(.*?)\} 你的正则表达式有一个无用的 [^)],这与 * 将选择到 ) 字符,但没有 )。所以,最好使用我的正则表达式。

此处演示:http://regex101.com/r/eM6iL0

关于c# - 如何使用 .NET 获取位于两个 '{' 括号'}' 之间的文本字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23781069/

相关文章:

c# - 一个事务中两个语句的 NHibernate Race Condition

Java 替换全部

python - str.contains 的可扩展解决方案与 pandas 中的字符串列表

c++ - 使用istringstream处理一个变长的内存块

python - 将字符串转换为二维 numpy 数组

c# - 如何为 Jetbrains Rider asp.net 项目指定基本 url 或主机端口

c# - 在不使用互操作/非托管代码的情况下监视打印假脱机

c# - 如何从模型列表中的模型分配值

java - 正则表达式验证出错 - Java

python - 在python中将字符串转换为元组