一个字符串的分割。

小脩 2013-07-04 11:31:01
一个字符串:

String str = "100<n<1000";
或 str = "100≤n≤1000";
或 str = "100≤n<1000";
或 str = "100<n≤1000";


其中<和≤这2中是任意的,
我想把上面几种情况分割成: 100, <, n, <, 1000 这种样子。
...全文
214 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
失落夏天 2013-07-04
  • 打赏
  • 举报
回复
如果正则的话regex="(.*?)(<)|(.*?)(≤)"; 提取的时候提取两个获取组。
爱T 2013-07-04
  • 打赏
  • 举报
回复
就是字符串转为一个个的单字符
ghostkngiht 2013-07-04
  • 打赏
  • 举报
回复
str.split("(?=[≤<])|(?<=[≤<])")
花木兰1闪21A 2013-07-04
  • 打赏
  • 举报
回复
public static void main(String[] arg) {
		String intputStr = "100≤n<1000";
		String arr[] = intputStr.split("[<≤]");
		String regexArr[] = intputStr.split("n");
		StringBuilder sbBuilder = new StringBuilder();
		List<String> regexList = new ArrayList<String>();
		for (String s : regexArr) {
			if (s.contains("<")) {
				regexList.add("<");
			} else if (s.contains("≤")) {
				regexList.add("≤");
			}
		}
		int listIndex = 0;
		for (int i = 0; i < arr.length; i++) {
			sbBuilder.append(arr[i]).append(",");
			if (regexList.size() - 1 >= listIndex) {
				sbBuilder.append(regexList.get(listIndex)).append(",");
			}
			listIndex++;
		}
		System.out.println(sbBuilder.toString().substring(0,
				sbBuilder.toString().length() - 1));

	}
菖蒲老先生 2013-07-04
  • 打赏
  • 举报
回复
用StringBuilder在字符串中的<或<=两边插入,字符。。。

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧