抱歉标题不好,但真的找不到其他的话。但是,我在java工作,我有以下模式匹配。
模式为(\\w)*(\\s+)(\\w)*(\\,)(\\s*)(\\w)*(\\,)?(\\s*)(\\w)*
要匹配的字符串属于"add r0, r1, r2"
类型。
现在,我如何从上面的字符串中提取所有单个字符串,即。 add,r0,r1 and r2
?
为了更清楚,如果输入字符串是"mov r1, r4"
,我想提取mov, r1 and r4.
如何解决这个问题?
答案 0 :(得分:0)
提示:请勿尝试使用复杂的正则表达式匹配整个字符串,并使用String#split(regex)
使用空格或逗号("[, ]"
)将其拆分并从中获取令牌结果数组。
String input = "add r0, r1, r2";
String[] arr = input.split("[ ,]+"));
// [add, r0, r1, r2]
答案 1 :(得分:0)
你可以试试这个: -
String yourinput="add r0, r1, r2"
String[] s=yourinput.split("[\\s,]+");