我想从文本文件中删除特定数字,数字列表按从 1 到 192061 的顺序排列。 我需要删除一组数字,例如:“61186”、“95492”、“158740”、“151276”、“92709” 我的清单总共有 13k 左右。
我试过这个:(61186)|(95492)|(158740)|(151276)|(92709)。 但在列表中我有:61186 和 161186,它们不匹配。
为 1 - 192061 生成的简单数字范围正则表达式为:
(?<!\d)(?:[1-9]\d{0,4}|1[0-8]\d{4}|19[01]\d{3}|1920[0-5]\d|19206[01])(?!\d)
https://regex101.com/r/YL4GS3/1
毫无疑问你应该在没有前瞻/后视断言的情况下这样做,
但正则表达式可以像这样重新排列:
1[0-8]\d{4}|19[01]\d{3}|1920[0-5]\d|19206[01]|[1-9]\d{0,4}