搜索连续的序列违规
Search for consecutive sequence violation
我想测试字符串是否损坏,最简单的方法是使用正则表达式来查找重复字符序列的违规行为。假设用于验证完整性的序列是 0 到 9。
例如,“0123456790123456789”将匹配“79”,因为缺少“8”。
'01234567555890123456789' 将匹配 '75558' 因为 '555' 不属于。返回的具体字符串并不重要,只是标记至少第一个损坏位置。
我怎样才能用正则表达式实现这个,如果这甚至可以用正则表达式实现?
你可以这样拼出序列:
(0[^1]|1[^2]|2[^3]|3[^4]|4[^5]|5[^6]|6[^7]|7[^8]|8^[9]|9[^0])
在 01234567555890123456789
它 returns 两个匹配 75
和 55
- 它至少会可靠地找到第一个损坏的 link.
我不认为仅在正则表达式中可以做更多的事情,因为正则表达式本身不能进行排序比较。
我想测试字符串是否损坏,最简单的方法是使用正则表达式来查找重复字符序列的违规行为。假设用于验证完整性的序列是 0 到 9。
例如,“0123456790123456789”将匹配“79”,因为缺少“8”。
'01234567555890123456789' 将匹配 '75558' 因为 '555' 不属于。返回的具体字符串并不重要,只是标记至少第一个损坏位置。
我怎样才能用正则表达式实现这个,如果这甚至可以用正则表达式实现?
你可以这样拼出序列:
(0[^1]|1[^2]|2[^3]|3[^4]|4[^5]|5[^6]|6[^7]|7[^8]|8^[9]|9[^0])
在 01234567555890123456789
它 returns 两个匹配 75
和 55
- 它至少会可靠地找到第一个损坏的 link.
我不认为仅在正则表达式中可以做更多的事情,因为正则表达式本身不能进行排序比较。