用Java正则表达式提取字符串中特的字符

AlanChen
博客专家认证
2017-02-07 07:02:34
写一个Java函数提取如下字符串中:$PROFILES$.MFG_ORGANIZATION_ID、:$FLEX$.GBINV_ACCOUNT_TYPE、:$FLEX$.GB_START_DATE和:$FLEX$.GB_END_DATE等等字符串

Where mmt.transaction_id in (select max(mmt2.transaction_id)
from mtl_material_transactions mmt2
where mmt2.organization_id = :$PROFILES$.MFG_ORGANIZATION_ID
and mmt2.transaction_type_id = :$FLEX$.GBINV_ACCOUNT_TYPE
And MMT2.Transaction_Date >= To_Date(:$FLEX$.GB_START_DATE,'YYYY/MM/DD')
And MMT2.Transaction_Date < To_Date(:$FLEX$.GB_END_DATE,'YYYY/MM/DD')+1
and mmt.attribute1 = mmt2.attribute1
and mmt2.attribute1 is not null)
...全文
365 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
自由自在_Yu 2017-02-08
  • 打赏
  • 举报
回复
你的原字符串格式是什么样的?
  • 打赏
  • 举报
回复


上面的结果是保存在List中,你可以根据自己的需要去修改
  • 打赏
  • 举报
回复

	/**
	 * 获取sql参数
	 * @param input
	 * @return
	 */
	public static List<String> getArgumentsInSql(String input){
		String regex=":[\\w\\$\\.]+";
		Matcher m=Pattern.compile(regex).matcher(input);
		List<String> resultList=new ArrayList<String>();
		while(m.find()){
			resultList.add(m.group());
		}
		return resultList;
	}

81,122

社区成员

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

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