使用JavaScript和Node,我有一个文本文件,其内容如下:
The First 1,000,000 Primes (from primes.utm.edu)
2 3 5 7 11 13 17 19
23 29 31 37 41 43 47 53
59 61 67 71 73 79 83 89
97 101 103 107 109 113 127 131
我已经阅读了文件内容,现在想匹配整数值,而忽略标题中带逗号的数字。我不允许编辑该文件。
我尝试了/\d+/
,但得到了these matches:
1 000 000 2 3 5 等等
我只想要整数质数。非常感谢。
答案 0 :(得分:1)
您需要某种方法来确保匹配的数字以空格开头,然后是空格。您可以使用lookbehind进行此操作,尽管在许多环境中不支持它:
(?<= )\d+(?= )
https://regex101.com/r/dRaquW/4
不要向后看,而是 match 前导空格,然后捕获组中的数字:
\s(\d+)(?= )
答案 1 :(得分:1)
您可以断开行,扔掉第一行,然后应用正则表达式。像
var numbersString = fileTxt.split('\n').slice(1).join('\n');
然后在数字字符串上进行正则表达式
pd:已编辑,因为shift返回已删除的行,因此需要将其切片以成为一个单行纸