我工作中遇到的正则表达式(一)

直接看下代码,大概就能明白我要完成的需求了。

我这里需要将|号分割的最后一组替换成它对应的中文表示(当然这里是有对应的key-value字典的)。

bs.replace(/([^\|]*)$/, function(key){return map[key];});

那么在Java应该怎么实现呢?

String str = "abcd|substr";
/* 1.这个方法不支持正则表达式,只是简单的字符(串)替换 */
String ret = str.replace("[^\\|]*$", "替换");
System.out.println(ret); // abcd|substr
/* 2. 失败的例子 */
ret = str.replaceAll("[^\\|]*$", "替换");
System.out.println(ret); // abcd|替换替换
/* 3.新的思路 */
ret = str.replaceFirst("(.*\\|)(.*)$", "$1替换");
System.out.println(ret); // abcd|替换

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Web项目聚集地

MyBatis框架教程「工具类的使用」

上篇文章我们熟悉运用MyBatis进行增删改查,并且手写了一个mybatis的工具类,学习了一些关于单元测试和关于日志的配置,没有看的读者请移步:MyBatis...

33820
来自专栏会跳舞的机器人

java并发编程的艺术第十章——Executor框架

Executor框架的主要成员:ThreadPoolExecutor、ScheduledThreadPoolExecutor、Future接口、Runnable...

13220
来自专栏好好学java的技术栈

重温java web过滤器filter

Filter 技术是servlet 2.3 新增加的功能。Filter翻译过来的意思就是过滤器,能对客户端的消息进行预处理,然后将请求转发给其它的web组件,可...

14510
来自专栏好好学java的技术栈

servlet就是这么简单

Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库...

13720
来自专栏Web项目聚集地

微信扫码登录实战(附代码)

导读: 由于微信端流量比较足,所以扫码登录系统功能也受到了很多系统的青睐,本文就来详细的解开该技术的面纱。 优质内容请关注微信公众号“Web项目聚集地”

4.8K20
来自专栏Web项目聚集地

从零学习Spring Boot-入门起步

Spring Boot是Spring社区较新的一个项目。该项目的目的是帮助开发者更容易的创建基于Spring的应用程序和服务,让更多人的人更快的对Spring进...

12830
来自专栏好好学java的技术栈

java后端开发每天遇到的jsp,了解一下

JSP脚本片断(scriptlet)用于在JSP页面中编写多行Java代码(在<%%>不能定义方法)。语法:<%多行java代码 %>

29520
来自专栏Web项目聚集地

8张图理解Java

一图胜千言,下面涉及的图解均来自Program Creek 网站的Java教程,目前它们拥有最多的票选。如果图解没有阐明问题,那么你可以借助它的标题来一窥究竟。

12510
来自专栏阮一峰的网络日志

关于网页设计的一些统计数字

● 2003年,全世界网页的平均大小是93.7KB,2008年增长到312KB,5年中翻了3.3倍。(这里的网页大小包括图片、CSS文件、Javascript文...

26320
来自专栏阮一峰的网络日志

全球主要城市实时天气查询

作为学习javascript的练习,我制作了一个网页,可以查询全球主要城市此时此刻的天气,请点击进入。

37820

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励