Select 子字符串中括号的内容 (VB.NET)
Select contents of parenthesis in substring (VB.NET)
我有一个这样的文本子串:
Serial Port Name (COM 1)
我将如何获取上述括号中的内容?
提前致谢。
您可以使用String.IndexOf
找到每个paren的索引,然后使用String.Substring
提取您想要的部分。
您还可以使用 Regex
和适当的模式来找到匹配项。
这是正则表达式的理想选择,尽管这对它们来说是相当基本的匹配:
Dim str as String = "Serial Port Name (COM 1)"
Dim inbrackets as String = Regex.Match(str, "\((.*)\)").Groups(1).Value
此表达式查找括号 - \(
和 \)
- 中间有任意数量的字符 - .*
表示匹配除新行之外的任何字符零次或多次。内部也用括号括起来,使其成为 捕获组 - 即 (.*)
。这意味着 .Groups
属性 可用于从该捕获组中检索单个文本。第一组(即 .Groups(0).Value
)将是整场比赛,并会给你“(COM 1)”。
我有一个这样的文本子串:
Serial Port Name (COM 1)
我将如何获取上述括号中的内容?
提前致谢。
您可以使用String.IndexOf
找到每个paren的索引,然后使用String.Substring
提取您想要的部分。
您还可以使用 Regex
和适当的模式来找到匹配项。
这是正则表达式的理想选择,尽管这对它们来说是相当基本的匹配:
Dim str as String = "Serial Port Name (COM 1)"
Dim inbrackets as String = Regex.Match(str, "\((.*)\)").Groups(1).Value
此表达式查找括号 - \(
和 \)
- 中间有任意数量的字符 - .*
表示匹配除新行之外的任何字符零次或多次。内部也用括号括起来,使其成为 捕获组 - 即 (.*)
。这意味着 .Groups
属性 可用于从该捕获组中检索单个文本。第一组(即 .Groups(0).Value
)将是整场比赛,并会给你“(COM 1)”。