鉴于:
var input = "test <123>";
Regex.Matches(input, "<.*?>");
Run Code Online (Sandbox Code Playgroud)
结果:
<123>
Run Code Online (Sandbox Code Playgroud)
给我我想要的结果,但包括尖括号.哪个好,因为我可以轻松地进行搜索和替换.我只是想知道是否有办法在表达式中包含它?
您需要使用捕获组:
var input = "test <123>";
var results = Regex.Matches(input, "<(.*?)>")
.Cast<Match>()
.Select(m => m.Groups[1].Value)
.ToList();
Run Code Online (Sandbox Code Playgroud)
可以m.Groups[1].Value让您获取捕获组 #1 值。
更好、更高效的正则表达式可以是<([^>]*)>(它匹配<,然后匹配并捕获>到第 1 组中除然后仅匹配之外的任何零个或多个字符>)。请参阅正则表达式演示:
| 归档时间: |
|
| 查看次数: |
44 次 |
| 最近记录: |