java - 如何将 Java 正则表达式匹配到结果字符串?
问题描述
请参考上面的问题。我从未使用过 java regex 。如何将所有子字符串放入新字符串中,匹配字符(符号如'('')''。''<''>''')用单个空格分隔。例如,在正则表达式之前
String c= "List<String> uncleanList = Arrays.asList(input1.split("x"));" ;
我想要这样的结果字符串。
String r= " List < String > uncleanList = Arrays . asList ( input1 . split ( " x " ) ) ; "
解决方案
参考您链接到的代码,matcher.group()
将为您提供一个令牌。简单地使用 StringBuilder 附加这个标记和一个空格来获取一个新的字符串,其中标记是空格分隔的。
String c = "List<String> uncleanList = Arrays.asList(input1.split(\"x\"));" ;
Pattern pattern = Pattern.compile("\\w+|[+-]?[0-9\\._Ee]+|\\S");
Matcher matcher = pattern.matcher(c);
StringBuilder sb = new StringBuilder();
while (matcher.find()) {
String token = matcher.group();
sb.append(token).append(" ");
}
String r = sb.toString();
System.out.println(r);
推荐阅读
- r - R:dplyr::mutate 使用由作为字符串传递的变量组合组成的表达式
- facebook - Facebook 发布为 Swift 4 中的页面
- elasticsearch - 使用带有filebeat的logstash时出现权限错误
- mysql - 使用 GROUP BY 时防止行混合?
- c# - 尝试通过 Selenium 清除文本时出现 InvalidElementStateException
- ionic3 - 使用带有 AlertCtrl Ionic 的变量
- swift - Swift 中的宏闭包
- shell - 如何使用 shell 脚本将多个文件中的多组行附加和排序到结果文件?
- android - 在 MVP 模式中将 View 的引用传递给 Presenter 是一种不好的做法吗?
- c# - 使用 Homography 链接两个图片像素