我有以下字符串:
str1 = "+58*/-47+-2*"
str2 = "++*46+8+*7+2*1"
str3 = "-9*-"
我希望得到以下输出:
ostr1 = "58*47+2"
ostr2 = "46+8+7+2*1"
ostr3 = "9"
例如规则如下:
数学运算符为
+, - , /, *
当字符串中有至少两个连续的数学运算符时,请选择第一个运算符。
抑制字符串开头或结尾处的所有连续数学运算符。
到目前为止,我已经用以下方式填写了第三个条件:
gsub("(.*)[\\+|-|\\*|/]+$", "\\1", gsub("^[\\+|-|\\*|/]+(.*)", "\\1", str1))
这似乎不是很优雅...而且我仍在为第二个条件苦苦挣扎:
gsub("([\\+|-|\\*|/]{1})[\\+|-|\\*|/]+", "\\1", str1)
无法工作。
欢迎所有 正则表达式
高手提供建议。