java 正则表达式 分割,在java中使用正则表达式拆分字符串

I'm new to regex, What i'm trying to do is to split the String with certain conditions but i don't know how to do it.

Here is the sample/condition

String str = sum1=x+(5+a)

Array[0] = sum1

Array[1] = =

Array[2] = x

Array[3] = +

Array[4] = (

Array[5] = 5

Array[6] = +

Array[7] = a

Array[8] = )

I want the string to be split by +,-,*,\,(,),=

Is this possible?

解决方案

If you really need to use regex you should probably use look-around mechanism since you don't want to split at this characters, but before or after them.

String str = "sum1=x+(5+a)";

String[] array=str.replaceAll("\\s+","")//remove all spaces

.split("(?<=[+\\-*\\\\()=/])|(?=[+\\-*\\\\()=/])");

for (int i=0; i

System.out.println("Array["+i+"] = "+array[i]);

output:

Array[0] = sum1

Array[1] = =

Array[2] = x

Array[3] = +

Array[4] = (

Array[5] = 5

Array[6] = +

Array[7] = a

Array[8] = )

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值