如何在Notepad++中用正则表达式选中逗号分隔数及小于10000的数
解决方案
直接使用以下正则表达式即可满足需求:
(?:\d{1,3}(?:,\d{3})+)|(?<!\d,)[+-]?\d{1,4}(?!,\d)
正则各部分说明:
(?:\d{1,3}(?:,\d{3})+):专门匹配带逗号分隔的大数值,比如4,000,000、1,771,000这类格式的数值,不管数值大小都能选中。(?<!\d,)[+-]?\d{1,4}(?!,\d):匹配小于10000的数值,细节如下:[+-]?:允许数值带正负号,比如+4000;\d{1,4}:匹配1到4位数字(覆盖0到9999的所有数值);(?<!\d,):避免误匹配逗号分隔数值里的前几位(比如640,000里的640不会被单独选中,只会选中完整的640,000);(?!,\d):避免误匹配逗号分隔数值的末尾部分,确保只选中独立的小数值。
适配场景验证:
这个正则能完美匹配你给出的所有目标数值:
- 所有逗号分隔的大数值全部被选中;
- 独立小数值如
5000、1820被选中; - 和单词拼接的小数值如
Finnish4000里的4000被选中; - 带符号的小数值如
+4000被选中; - 特殊格式里的小数值如
0-640,000里的0、=0=500,000里的0也能被选中。
内容的提问来源于stack exchange,提问作者Pubg Mobile
相关产品推荐
相关产品推荐

