如果字符串包含以下内容:https://website1.comhttps://website2.com
如何创建一个返回值为2的正则表达式。含义,因为“https://”在该字符串中出现两次,它应返回2.
我目前正在使用此正则表达式来解析两个“https://”,但不知道如何调整它以返回字符串中的“https //”的数量(在本例中为2)。 / p>
(?s)(?<=https://).+?(?=https://)
使用.NET Framework。非常感谢您的帮助
答案 0 :(得分:0)
这是一种棘手的非正则表达方式:
var inp = "https://website1.comhttps://website2.com";
var cnt_nonrgx = inp.Length - inp.Replace("https://", "https:/").Length;
这是正则表达式:
var cnt_rgx = Regex.Matches(inp, "https://").Count;
这是一种经典的方式:
var cnt_liof = 0;
var idx = inp.IndexOf("https://");
while (idx > -1)
{
cnt_liof += 1;
idx = inp.IndexOf("https://", idx + 1);
}
所有结果均为2
。