Java 将方法字符串拆分为方法名称和参数

标签 java arrays regex string

我正在为我正在制作的游戏编写一种小型编程语言,该语言将允许用户在内部游戏代码之外为向导实体定义自己的咒语。我已经写下了语言,但我不完全确定如何更改字符串,例如

setSpellName("Fireball")
setSplashDamage(32,5)

进入一个数组,其中包含方法名称和后面的参数,例如

{"setSpellName","Fireball"}
{"setSplashDamage","32","5"}

我如何使用java的String.split或字符串正则表达式来做到这一点? 提前致谢。

最佳答案

由于您只对函数名称和参数感兴趣,因此我建议扫描到参数的第一个实例(然后是最后一个实例),如下所示。

String input = "setSpellName(\"Fireball\")";
String functionName = input.substring(0, input.indexOf('('));
String[] params = input.substring(input.indexOf(')'), input.length - 1).split(",");

关于Java 将方法字符串拆分为方法名称和参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31777870/

相关文章:

java - 如何覆盖通用存储库错误消息

java - 适用于 Android 应用的 Linkedin Api 查询

java - 向上转换对静态方法有影响吗?

regex - 如何设置此正则表达式的最大长度?

java - 返回数组总和的 toString 方法和递归方法中的错误

javascript - 在数组中搜索以 `+` 开头的括号

arrays - UITableViewCell 删除然后所有复选标记 swift 消失

C程序函数将一个单词替换为另一个单词

regex - 正则表达式匹配两个单词第一次出现之间的所有内容,这两个单词都出现不止一次

python - 正则表达式模式在剥离结尾标点符号的同时标记句子?