使用Java String split()作为简单的“解析器”

称呼

[{Action = GoTo,Title = 0001000a,Page = 1 XYZ 7797 null},{Action = GoTo,Title = 0001000b,Page = 3 XYZ 7797 null},{Action = GoTo,Title = 0001000c,Page = 5 XYZ 7 797 null},{Action = GoTo,Title = 0001000d,Page = 7 XYZ 7797 null}]

我试图找到最简单的方法来解析上述字符串,我需要的只是“标题”和“页面”。所以我想要一个简单的String [] = {“ 0001000a”,“ 1”,“ 0001000b”,“ 3” ...}

str.split("(\\[|, )\\{Action=GoTo, Title=|, Page=| XYZ \\d+ \\d+ null\\}");

我已经在一些在线js regexp测试器中测试了regexp,看起来不错,但是生成的String [] = {“ 0001000a”,“ 1”,“”,“ 0001000b”,“ 3”,“” ...} ,每个页面值后面的一个额外的空字符串。

str.split("\\[|\\{Action=GoTo, Title=|, Page=| XYZ \\d+ \\d+ null\\}(, |\\])");

这会产生String [] = {“”,“ 0001000a”,“ 1”,“”,“ 0001000b”,“ 3” ...},这是每个标题值前面的空字符串。

看来Java不喜欢regexp作为“,”,或者它可能是Java String.split()起作用的方式!

Tibrogargan

使用纯正则表达式而不是split()可以轻松实现

String line = "[{Action=GoTo, Title=0001000a, Page=1 XYZ 7 797 null}, {Action=GoTo, Title=0001000b, Page=3 XYZ 7 797 null}, {Action=GoTo, Title=0001000c, Page=5 XYZ 7 797 null}, {Action=GoTo, Title=0001000d, Page=7 XYZ 7 797 null}]";
ArrayList<String> list = new ArrayList<>();
Pattern pattern = Pattern.compile("Title=([^,]+), Page=([^}]+)}");
Matcher matcher = pattern.matcher(line);
while (matcher.find()) {
    list.add(matcher.group(1));
    list.add(matcher.group(2));
}
String[] foo = list.toArray(new String[list.size()]);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java JSON简单解析器

来自分类Dev

使用PHP简单DOM解析器进行递归

来自分类Dev

使用简单HTML DOM解析器转换为JSON?

来自分类Dev

使用monad进行简单的Haskell解析器

来自分类Dev

使用简单的HTML dom解析器创建多维数组?

来自分类Dev

使用简单HTML DOM解析器转换为JSON?

来自分类Dev

使用PHP简单DOM解析器进行递归

来自分类Dev

在JavaScript中使用split的递归解析器

来自分类Dev

是否可以使用JavaCC解析器解析String并对其应用分配法则?

来自分类Dev

构建一个简单的解析器,能够使用PyParse解析不同的日期格式

来自分类Dev

使用Scala Packrat解析器解析简单的字符串

来自分类Dev

解析网站并使用“ PHP简单HTML DOM解析器”保存特定的DIV

来自分类Dev

构建一个简单的解析器,能够使用PyParse解析不同的日期格式

来自分类Dev

使用scala packrat解析器解析一个简单的字符串

来自分类Dev

无法使用 PHP 简单 HTML DOM 解析器解析网页

来自分类Dev

嵌套选择器无法使用简单的html dom解析器

来自分类Dev

使用ANTLR生成词法分析器/解析器作为流

来自分类Dev

使用PHP简单HTML DOM解析器获取Div属性

来自分类Dev

使用简单的html dom解析器的元素不一致导致问题

来自分类Dev

如何使用Aeson的解析器从非常简单的Object中获取键值

来自分类Dev

如何使用简单的html解析器或其他方法获取值

来自分类Dev

在使用PHP简单HTML DOM解析器进行选择时需要帮助

来自分类Dev

如何使用简单的html dom解析器从搜索中跳过重复的内容

来自分类Dev

使用PHP简单HTML DOM解析器提取HTML文件的特定部分

来自分类Dev

使用简单的HTML dom解析器通过特定的搜索文本获取链接

来自分类Dev

如何使用简单的dom解析器从div类数据中获取数据?

来自分类Dev

是否可以创建一个简单的解析器并创建一个javascript文件,然后使用该解析器调用该文件?

来自分类Dev

AEM:由于不赞成使用getAdministrativeResourceResolver(Map <String,Object> authenticationInfo),因此如何获取管理资源解析器?

来自分类Dev

AEM:由于不赞成使用getAdministrativeResourceResolver(Map <String,Object> authenticationInfo),因此如何获取管理资源解析器?

Related 相关文章

  1. 1

    Java JSON简单解析器

  2. 2

    使用PHP简单DOM解析器进行递归

  3. 3

    使用简单HTML DOM解析器转换为JSON?

  4. 4

    使用monad进行简单的Haskell解析器

  5. 5

    使用简单的HTML dom解析器创建多维数组?

  6. 6

    使用简单HTML DOM解析器转换为JSON?

  7. 7

    使用PHP简单DOM解析器进行递归

  8. 8

    在JavaScript中使用split的递归解析器

  9. 9

    是否可以使用JavaCC解析器解析String并对其应用分配法则?

  10. 10

    构建一个简单的解析器,能够使用PyParse解析不同的日期格式

  11. 11

    使用Scala Packrat解析器解析简单的字符串

  12. 12

    解析网站并使用“ PHP简单HTML DOM解析器”保存特定的DIV

  13. 13

    构建一个简单的解析器,能够使用PyParse解析不同的日期格式

  14. 14

    使用scala packrat解析器解析一个简单的字符串

  15. 15

    无法使用 PHP 简单 HTML DOM 解析器解析网页

  16. 16

    嵌套选择器无法使用简单的html dom解析器

  17. 17

    使用ANTLR生成词法分析器/解析器作为流

  18. 18

    使用PHP简单HTML DOM解析器获取Div属性

  19. 19

    使用简单的html dom解析器的元素不一致导致问题

  20. 20

    如何使用Aeson的解析器从非常简单的Object中获取键值

  21. 21

    如何使用简单的html解析器或其他方法获取值

  22. 22

    在使用PHP简单HTML DOM解析器进行选择时需要帮助

  23. 23

    如何使用简单的html dom解析器从搜索中跳过重复的内容

  24. 24

    使用PHP简单HTML DOM解析器提取HTML文件的特定部分

  25. 25

    使用简单的HTML dom解析器通过特定的搜索文本获取链接

  26. 26

    如何使用简单的dom解析器从div类数据中获取数据?

  27. 27

    是否可以创建一个简单的解析器并创建一个javascript文件,然后使用该解析器调用该文件?

  28. 28

    AEM:由于不赞成使用getAdministrativeResourceResolver(Map <String,Object> authenticationInfo),因此如何获取管理资源解析器?

  29. 29

    AEM:由于不赞成使用getAdministrativeResourceResolver(Map <String,Object> authenticationInfo),因此如何获取管理资源解析器?

热门标签

归档