【发布时间】:2021-09-15 17:47:25
【问题描述】:
我需要在较大的文本中找到文本模式 [anystring].[anystring]。
我写了一个正则表达式代码来实现这个
var pattern = @"\[(.*?)\]\.\[(.*?)\]";
string CustomText = "some text here [anystring].[anystring] some text here etc"
var matchesfound = System.Text.RegularExpressions.Regex.Matches(CustomText, pattern);
此代码工作正常并检测到“[string].[string]”模式,但它失败了
var pattern = @"\[(.*?)\]\.\[(.*?)\]";
string CustomText = "[somestring]=[anystring].[anystring]"
var matchesfound = System.Text.RegularExpressions.Regex.Matches(CustomText, pattern)
在上述场景中,它标识了整个字符串“[somestring]=[anystring].[anystring]”,但我只希望将“[anystring].[anystring]”标识为匹配项。请问有什么帮助吗?谢谢。
【问题讨论】:
-
使用
\[([^][]*)\]\.\[([^][]*)\]