正则表达式 – 正则表达式 – 两位数范围(23-79)?
发布时间:2020-12-13 22:56:35 所属栏目:百科 来源:网络整理
导读:我一直在阅读这个网站上的正则表达式问题,但我的问题似乎有点不同.我需要匹配一个2位数字,例如23到75.我在HP-UX Unix系统上这样做.我找到了3 – 44但是或者任何数字的例子,没有任何长度固定的,这有点令人惊讶,但也许我不明白可变长度的例子答案. 由于您没有
我一直在阅读这个网站上的正则表达式问题,但我的问题似乎有点不同.我需要匹配一个2位数字,例如23到75.我在HP-UX Unix系统上这样做.我找到了3 – 44但是或者任何数字的例子,没有任何长度固定的,这有点令人惊讶,但也许我不明白可变长度的例子答案.
由于您没有指出这是否是任何其他字符(或更大字符串的中间),我在此处包含了逻辑,以指示您需要匹配字符串的数字部分.这应该会让你到那里.我们正在为我们正在寻找的第二个数字创建一个范围,只允许这些字符.然后我们将它与其他范围进行比较:
(2[3456789]|[3456][0-9]|7[012345]) 正如oded所指出的,你也可以这样做,因为子范围也被接受(取决于你正在使用的应用程序中REGEX的实现): (2[3-9]|[3-6][0-9]|7[0-5]) 根据标题,您可以将最后5个更改为9到75-79: (2[3-9]|[3-6][0-9]|7[0-9]) 如果您尝试将这些数字专门用作字符串(从开始到结束),那么您将使用修饰符^和$来指示字符串的开头和结尾. Regex系列有一个很好的技术参考: http://www.regular-expressions.info/numericranges.html 如果您正在使用类似grep的内容并尝试将包含该数字的行与其他内容进行匹配,那么您可以对79到79的范围执行类似的操作: grep "[^0-9]?(2[3-9]|[3-6][0-9]|7[0-9])[^0-9]?" folder (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |