说我有一些包含String
的"This sentence was written on 2020-03-21 by person 1234567 at 07:23 hours"
对象。我如何只提取字符串的"1234567"
部分?也许可以使用此Extract digits from string - StringUtils Java问题的解决方案,但我不知道如何仅在所需序列上限制提取的数字。
如果我在此字符串上使用str.replaceAll("[^0-9]", "")
,则会得到"2020032112345670723"
,这意味着它将提取字符串中的所有数字,但我只希望包含一定数字位数的序列(在我的情况下为7 )。
而且,序列将不会总是在同一位置,因此使用substring(index from, index to)
将不起作用。
我可能会使用正则表达式来做到这一点。对于七个相邻数字,即\d{7}
。
((我不再使用Java,但我将在几分钟后附加如何将这些数字提取到此答案中)