Java 将字符串转换为数字数组

Java convert string to array of numbers

我想知道是否有任何 java 函数可以从字符串中提取所有数字。 字符串示例:

"Preostalo stanje u Zicer tarifi: 248 min i 0 sec, 497 SMS, 220 MB. Tarifa vrijedi do 01.06.2015." 我想提取 284 和 0、497、220 和日期。

相同的函数应该提取其他类型的字符串,例如 "Trenutacno imas 326 bonus MB koji ti vrijede do 02.06.2015." 它将提取 326 和日期的位置。

像字符串 “Imas jos 42:39 od 50 minuta razgovora。 Imas jos 81 od 150 poruka。 Imas jos 118,0176MB。 Nemas activiranu opciju 1000 bonbon minuta i SMS-ova :(" 等。

我想我可以创建一个函数来遍历字符串,直到它找到数字字符然后它会对其进行短语,但这似乎很复杂。

在这种情况下,您最好的选择是 regular expression 结合从字符串到整数的转换。因此,对于您的情况,我会执行以下操作:

  1. 阅读正则表达式并编写与数字匹配的正则表达式。
  2. 获取该正则表达式与要从中提取数字的字符串的所有匹配项。
  3. 将匹配的子字符串转换为整数。幸运的是,there already is a method that does exactly that.