在Lua中找到字符串中的数字。

一个简单的问题。

当投掷骰子后,显示为:

“需要投掷 - [某些人]的[某些物品]150点加成”

我希望有一种方法来将150这个数字隔离出来。 然而,在Lua中并没有类似于split的函数(据我所知),那么最好的方法是什么?

原文链接 https://stackoverflow.com/questions/9473623

点赞
stackoverflow用户293352
stackoverflow用户293352

如果这是用于《魔兽世界》,请查看那里的 strsplit 函数。

否则,您可以使用 string.findstring.match 和模式 来实现。它可能只需使用 string.match 查找字符串中的第一个数字,如下所示:

number = string.match(
    "需要滚动点数 - 某个人的 [某个物品] 需要 150 点,加上职业奖励",
    "%d+"
)
2012-02-27 23:01:58
stackoverflow用户284969
stackoverflow用户284969

string.match (stringvar, "%d+") 可以翻译为:使用正则表达式匹配 _stringvar_ 中的数字,返回匹配到的数字的字符串。

2012-02-28 13:44:11