正则表达式以查找 nº X

本文关键字:查找 正则表达式 | 更新日期: 2023-09-27 18:30:37

我使用以下表达式来查找"nº"后跟一个数字(例如,"bla bla nº 5"应返回组"nº"和"5"):

('bnº'b)'s+('d+)

似乎不起作用。有人知道为什么吗?

谢谢

正则表达式以查找 nº X

如果您将正则表达式声明为逐字字符串文字,它将起作用。

var pattern = @"('bnº'b)'s+('d+)";
              ^

参见 IDEONE 演示:

var pattern = @"('bnº'b)'s+('d+)";
var line = "bla bla nº 5";
var result = Regex.Matches(line, pattern).Cast<Match>().Select(p=>string.Format("{0}-{1}", p.Groups[1].Value,p.Groups[2].Value)).ToList();
foreach (var s in result)
    Console.WriteLine(s);

删除第二个 ''b

('bnº)'s+('d+)

''b 匹配 ''w 匹配的字符和与 ''w 不匹配的字符之间的字边界

''w 匹配字符 a-z、A-Z、0-9 和 _。您正在使用 º,不包括在内