如何用一组分隔符分割一个字符串,并找到它是什么分隔符? Kotlin

所以我现在正在学习Kotlin,我试图做一个计算器,如果我们可以给出像4 + 3或3 * 5的表达式,我们将得到答案,所以我试图分割输入字符串,然后找到什么操作符使用和操作数是什么。

var list = str.split("+","-","*","/" ) 

所以我怎样才能得到用于分割该字符串的分隔符。

恐怕split方法没有这个功能。 你将不得不通过单独的split调用拆分字符串。 并将结果与​​原始字符串进行比较。 如果字符串没有被给定的分隔符分割,结果应该是相同的。

例如。 喜欢这个:

 var str = "5+1" var delimiters = arrayOf("+","-","*","/") var found = "Not found" for (delimiter in delimiters) { var splited = str.split(delimiter) if(splited[0] != str) { found = delimiter break } } println(found)