加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如何计算多个字符串长度

发布时间:2020-12-15 04:38:39 所属栏目:Java 来源:网络整理
导读:我有一个这样的字符串: 嘿,我的名字是$name $;我有$岁多岁,我喜欢玩$sport $,我住的是$country $! 我想在地图中返回$之间的每个单词的长度,例如,我的地图应该是: 名字 – 4 年 – 五 运动 – 五 国家 – 7 起初我想过在我的函数中进行递归调用,但是我没有
我有一个这样的字符串:

嘿,我的名字是$name $;我有$岁多岁,我喜欢玩$sport $,我住的是$country $!

我想在地图中返回$之间的每个单词的长度,例如,我的地图应该是:

>名字 – > 4
>年 – >五
>运动 – >五
>国家 – > 7

起初我想过在我的函数中进行递归调用,但是我没有办法做到这一点?

解决方法

您可以使用 Pattern和 Matcher进行匹配,这将返回所有匹配的实例,然后您可以迭代结果并添加到地图.

String x = "Hey my name is $name$; I have $years$years old," + 
           "and I love play $sport$and I live in $country$!";
Pattern p = Pattern.compile("$w+$");
Matcher m = p.matcher(x);
Map<String,Integer> map = new LinkedHashMap<>();

while(m.find()) {
  String in = m.group().substring(1,m.group().length()-1);
  map.put(in,in.length());
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读