java - 使用正则表达式在特定字符后捕获部分字符串
问题描述
String str = "FirstName LastName - 1234xx"
在上述情况下,想用“ - ”子字符串之后的所有内容替换上面的字符串。在上面的示例中,这意味着更改str
为1234xx
“ - ”之后的字符串长度不固定,因此不能仅捕获最后一个确定的编号。字符数
这种方法给出FirstName LastName - -
而不是期望的输出1234xx
public class StringExample
{
public static void main(String[] args)
{
String str = "FirstName LastName - 1234xx";
String newStr = str.replaceAll("(?<=( - )).*", "$1");
System.out.println(newStr);
}
}
解决方案
推荐阅读
- reactjs - 反应 axios 获取 url 编码解码问题
- reactjs - UseHistory 推送更改 url 但不更改站点
- git - 使用源下载管理新 nopCommerce 的存储库大小
- python - 在 python 中使用 os-preprocessor
- c# - 具有两个 ref 参数的 MethodInfo.Invoke 方法不起作用
- asp.net-core - 在我的网址中使用 www 时,在 aspnet 核心中出现 403 错误
- node.js - 以角度向用户显示假路线
- apache-kafka - kafka幂等生产者可以确保多个分区恰好一次吗
- html - 为什么我的搜索栏随着微调器移动?
- dialogflow-es - 如何将我的对话流连接到我的谷歌操作并在智能扬声器上进行测试