jjzjj

php - 正则表达式匹配子目录但不匹配父目录

coder 2024-05-03 原文

我正在努力为 PHP 获取正则表达式以匹配子目录但避免父目录。

http://www.address.com/2000/12/31/ -> 不匹配

http://www.address.com/2000/12/31/whatever/ -> 匹配

这是我尝试过但似乎不起作用的方法:#http://www\.address\.com/\d{4}/\d{2}/\d{2}/.#

最佳答案

末尾的点只会匹配一个字符,你想要一个或多个:

#http://www\.address\.com/\d{4}/\d{2}/\d{2}/.+#

关于php - 正则表达式匹配子目录但不匹配父目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16316128/

有关php - 正则表达式匹配子目录但不匹配父目录的更多相关文章

  1. c# - 正则表达式匹配不在引号中的关键字 - 2

    我怎样才能找到不在字符串中的关键字。例如,如果我有文本:Hellothistextisanexample.blablabla"thistextisinsideastring""randomstring"moretextblablabla"foo"我希望能够匹配所有的单词text不在里面"".在其他情况下,我想匹配:请注意,我不想匹配以红色突出显示的文本,因为它在字符串中可能的解决方案:我一直在努力,这是我目前所做的:(?s)((?<q>")|text)(?(q).*?"|)请注意正则表达式将if

  2. c# - 参数计数不匹配 - 2

    以下代码段有问题。我发现参数计数不匹配。由于多线程和不安全更新的问题,我不得不写这篇文章。delegatevoiddata_INPUTDelegate(objectsender,System.IO.Ports.SerialDataReceivedEventArgse);privatevoiddata_INPUT(objectsender,System.IO.Ports.SerialDataReceivedEventArgse){stringdata=serialPort.ReadLine();string[]tokens=data.Split(':');if(token

  3. c# - .NET 字节而不是字符的正则表达式 - 2

    我正在尝试做一些使用正则表达式会更容易的解析。输入是字节数组(或枚举)。我不想将字节转换为字符,原因如下:计算效率内存消耗效率一些不可打印的字节可能很难转换为字符。并非所有字节都是可打印的。所以我不能使用Regex.我知道的唯一解决方案是使用Boost.Regex(适用于字节-C字符),但这是一个C++库,使用C++/CLI进行包装将需要大量工作。如何在不使用.NET字符串和字符的情况下直接在.NET中对字节使用正则表达式?谢谢。 最佳答案 此处存在一些阻抗失配。您希望在.Net中使用使用字符串(多字节字符)的正则表达式,但您希望使

  4. c# - 如何将 SURF 兴趣点与图像数据库匹配 - 2

    我在C#(OpenSurf)中使用SURF算法从图像中获取兴趣点列表。这些兴趣点中的每一个都包含一个描述符向量、一个x坐标(int)、一个y坐标(int)、比例(float)和方向(float)。现在,我想将一个图像的兴趣点与数据库中的图像列表进行比较,该列表也有一个兴趣点列表,以找到最相似的图像。即:[Image(I.P.)]COMPARETO[ListofImages(I.P.)]。=>最佳匹配。单独比较图像会产生不令人满意的结果。在搜索stackoverflow或其他站点时,我发现的最佳解决方案是构建FLANN索引,同时跟踪兴趣点的来源。但在实现之前,我有一些让我感到困惑的问题:

  5. c# - 匹配所有美国电话号码格式的正则表达式 - 2

    首先我会说我在这里看到了很多例子并用谷歌搜索但没有发现符合我正在寻找一些匹配前3名不低于某些中间值的所有条件。请告诉我如何将它们全部放在一个地方。(xxx)xxxxxxx(xxx)xxxxxxx(xxx)xxx-xxxx(xxx)xxx-xxxxxxxxxxxxxxxxx-xxx-xxxxx用作:conststringMatchPhonePattern=@"\(?\d{3}\)?-?*\d{3}-?*-?\d{4}";Regexrx=newRegex(MatchPhonePattern,RegexOptions.Compiled|RegexOptions.IgnoreC

  6. c# - 验证有效时间的正则表达式 - 2

    我需要一个正则表达式来验证时间。有效值将从0:00到23:59。当时间小于10:00时,也应该支持一个字符的数字。这些是有效值:9:0009:00 最佳答案 试试这个正则表达式:^(?:[01]?[0-9]|2[0-3]):[0-5][0-9]$或者更明确地说:^(?:0?[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$ 关于c#-验证有效时间的正则表达式,我们在StackOverflow上找到一个类似的问题: https://stackove

  7. c# - 无法使正则表达式与多行一起正常工作 - 2

    我有一个来自应用程序的相当大的XML输出。我需要用我的程序处理它,然后反馈给原来的程序。此XML中有些部分需要填写或替换。有趣的部分如下所示:<sys:customtagsys:sid="1"sys:type="Processtart"/><sys:tag>value</sys:tag>herearesomeothertags<sys:tag>value</sys.tag><sys:customtagsys:sid="1"sys:type="Procesend

  8. c# - C#递归删除文件和目录 - 2

    如何在C#中递归删除给定的目录?包含文件的目录。应该System.IO.Directory.Delete使用第二个参数true可以解决问题吗?编辑:所以,我实际上确实回答了我自己的问题,尽管这里的答案更清楚一些。我首先问这个问题的原因是调用Delete的代码(第二个参数设置为true)没有做它应该做的事情正在做。事实证明,这是因为在目录层次结构的下方某处有一个文件设置了RO属性,并且Polish版本的WindowsXP为此发出了一条非常奇怪的消息。 最佳答案 如果子目录也包含文件,唯一对我有用的解决方案是使用递归函数:publics

  9. c# - 我需要一个正则表达式来验证给定字符串中至少 7 位数字 - 2

    我想验证一个电话号码。我的条件是我希望给定字符串中的数字最少为7个,忽略分隔符、X、括号。其实我想在regex中实现这个功能:Func<string,bool>Validate=s=>s.ToCharArray().Where(char.IsDigit).Count()>=7;Func<string,bool>RegexValidate=s=>System.Text.RegularExpressions.Regex.IsMatch(s,@"regexpatternshouldcomehere.")stringx="asd

  10. c# - 货币正则表达式 - 2

    我有asp:TextBox来保存货币值(value),即“1000”、“1000,0”和“1000,00”(逗号是俄罗斯标准的分隔符)。我要将什么ValidationExpression用于适当的asp:RegularExpressionValidator?我试过\d+\,\d{0,2}但它不允许没有小数位的数字,例如只是“1000”。 最佳答案 \d+(,\d{1,2})?仅当您有十进制数字时才允许使用逗号,并且根本不允许使用逗号。问号与{0,1}的含义相同,因此在\d+之后您有零个实例(即没有)或一个实例,\d{1,2}正如海伦

随机推荐

  1. c# - 使用 Entity Framework 自动编号 - 2

    我想遍历一组对象并将它们全部添加到一个表中。目标表有一个自增字段。如果我添加单个对象,则没有问题。如果我添加两个主键都为零的对象,EntityFramework将失败。我可以手动指定主键,但尝试EF的全部目的是让生活更轻松而不是更复杂。这是代码,随后收到异常。foreach(Contactcontactincontacts){Instructorinstructor=InstructorFromContact(contact);context.AddToInstructors(instructor);}try{context.SaveChanges();}catch(Exception

  2. C# 方法来缩放值? - 2

    我的值范围是0到255。有一种方法返回一个数组,其最小值和最大值在此范围内,即:13、15、20、27、50...240其中13是最小值,240是最大值我需要缩放这些值,使13变为0,240变为255,并按比例缩放它们之间的所有其他值。是否有任何C#方法可以做到这一点?谢谢! 最佳答案 使用这个公式y=mx+c其中m=(255-0)/(244-13)和c=-13*m所以你必须这样转换数组publicdouble[]GetScaling(double[]arr,doublemin,doublemax){doublem=(max-min

  3. c# - LINQ vs Lambda vs 匿名方法 vs 委托(delegate) - 2

    谁能解释一下LINQ、Lambda、匿名方法和委托(delegate)的含义?这三者有何不同?一个可以替换另一个吗?我在谷歌搜索时没有得到任何具体答案 最佳答案 LINQ是一个宽泛的技术名称,涵盖了.NET3.5的大部分内容和C#3.0的变化;“用语言查询”等等。委托(delegate)相当于函数指针;一个“方法句柄”作为一个对象,如果你愿意的话,即Func<int,int,int>add=(a,b)=>a+b;是一种编写我随后可以调用的委托(delegate)的方法。委托(delegate)还支持事件和其他回调方

  4. c# - 匿名类型属性 setter - 2

    为什么匿名类型没有属性setter?vara=new{Text="Hello"};a.Text="World";//error 最佳答案 匿名类型在设计上是不可变的。匿名类型旨在保存值,表示值的类型不应该是可变的。此外,这会使它们在字典中变得不可靠,因为哈希码在创建后可能会发生变化。许多LINQ方法都使用字典,尤其是在延迟求值的情况下,具有可变类型的LINQ可能会导致微妙的神秘错误。 关于c#-匿名类型属性setter,我们在StackOverflow上找

  5. C# float 无限循环 - 2

    C#(.Net3.5SP1)中的以下代码在我的机器上是一个无限循环:for(floati=0;i<float.MaxValue;i++);它达到了数字16777216.0,16777216.0+1的计算结果为16777216.0。然而此时:i+1!=i。这有点疯狂。我意识到float的存储方式有些不准确。而且我读到大于2^24的整数无法正确存储为float。仍然是上面的代码,即使无法正确表示数字,也应该在C#中有效。为什么不起作用?您可以对double进行同样的操作,但这需要很长时间。9007199254740992.0是double的限制。 最佳答案

  6. c# - Directory.Delete 不起作用。访问被拒绝错误,但在 Windows 资源管理器下没问题 - 2

    我搜索了SO但一无所获。为什么这不起作用?Directory.Delete(@"E:\3\{90120000-001A-0000-0000-0000000FF1CE}-C");上面一行会抛出异常“访问被拒绝”。我有管理员权限,我可以用资源管理器删除目录。看起来像一些禁止使用的字符?但Windows资源管理器可以处理它。我怎样才能删除具有这样名称的目录? 最佳答案 谢谢大家的意见,它帮助我快速找到解决方案。正如Phil所提到的“Directory.Delete如果是,则失败,无论权限如何(请参阅msdn.microso

  7. c# - 在 C# 中编写解析器的最佳/最快方法 - 2

    用C#构建解析器来解析我自己的语言的最佳方法是什么?理想情况下,我想提供一个语法,并将抽象语法树作为输出。非常感谢,内斯特 最佳答案 我对ANTLRv3有很好的体验.到目前为止,最大的好处是它允许您编写具有无限前瞻性的LL(*)解析器——这些可能不是最理想的,但语法可以以最直接和自然的方式编写,无需重构来解决解析器限制,解析器性能通常不是什么大问题(我希望你不是在编写C++编译器),尤其是在学习项目中。它还提供了构建有意义的ASTs的好方法。无需编写任何代码-对于每个语法产生式,您都指出“关键”标记或子产生式,这将成为一个树节点。或

  8. c# - 为什么 string.Compare 似乎不一致地处理重音字符? - 2

    如果我执行下面的语句:string.Compare("mun","mün",true,CultureInfo.InvariantCulture)结果为'-1',表示'mun'的数值小于'mün'。但是,如果我执行这条语句:string.Compare("Muntelier,Schweiz","München,Deutschland",true,CultureInfo.InvariantCulture)我得到“1”,表示“Muntelier,Schewiz”应该排在最后。这是比较中的错误吗?或者,更有可能的是,在对包含重音符

  9. c# - 如何确定 Console.Out 是否已重定向到文件? - 2

    如果我的程序正在打印到控制台,我会根据Console.WindowWidth通过插入换行符以某种方式执行自动换行-这非常有效。但是,如果程序的输出被重定向到一个文件或另一个程序,我希望它跳过自动换行。我如何才能检测到这种情况?Console.WindowWidth在两种情况下返回相同的数字。奖励如果解决方案可以区分重定向的Console.Out和重定向的Console.Error。 最佳答案 .NET4.5添加了Console.IsOutputRedirected和Console.IsErrorRedirected。

  10. C#/Web开发学习攻略 - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭3年前。Improvethisquestion对于一般的.NETWeb开发和编程新手,谁会选择C#作为首选语言?先学习C#而不尝试将其应用于Web开发是否更好?似乎大多数C#文献都使用控制台或Windows窗体作为学习平台。那么这是最好的方向吗?或者您应该在练习Web开发的同时尝试学习C#?