java-获取字符串中指定单词的开始和结束位置?

问题描述

获取字符串中指定单词的开始和结束位置?

有一个较长的String字符串 还有有一个String单词数组
要查找单词数组里的每一个单词在字符串中的位置(int start和int end)。
比如单词为:Hi
字符串为:Hi,I am Mark.
那么Hi的start为1 end为2
有没有什么算法可以比较好的做出来?

需求:有个单词数组。要将单词数组里的单词在字符串中显示高亮。
发现:SpannableStringBuilder里有个setSpan可以做到。
但setSpan需要设置高亮的单词的int strart和int end..
想知道程序该怎么写...

或者按我的需求描述。有更好的设置特定单词在字符串中高亮,也请告诉。感激不尽。

解决方案

http://www.blogjava.net/Green-nut/articles/348167.html
http://blog.csdn.net/xiaoluningmeng/article/details/1597951

结束位置用开始位置+字符长度(length)

解决方案二:

string.indexOf

解决方案三:

subString(startIndex,endIndex)以0开始

解决方案四:

使用String的indexOf方法,返回第一次出现的位置,起始位置为0,如果不存在则返回-1;

时间: 2025-01-02 09:27:01

java-获取字符串中指定单词的开始和结束位置?的相关文章

php利用preg_match_all()正则获取字符串中指定参数链接地址

程序代码 <?php  $html = <<<HTML   <a href="http://www.111cn.net /?source=2008hao123banner">a1</a>   <a href="http://www.111cn.net /?source=2009hao123banner">a2</a> HTML;  // echo $html; $m = array(); pre

php结合正则获取字符串中数字_php技巧

php结合正则获取字符串中数字 <?php $patterns = "/\d+/"; //第一种 //$patterns = "/\d/"; //第二种 $strs="left:0px;top:202px;width:90px;height:30px"; preg_match_all($patterns,$strs,$arr); print_r($arr); /***************运行结果*********************

使用正则表达式 exec 获取字符串中的汉字_正则表达式

要求:仅获取attr中的 "编辑发起状态的执行人表单" ,路径C:\fakepath\是不固定的,可以是C:\fakepath\hhh\hhhh\ 解决: var attr = C:\fakepath\编辑发起状态的执行人表单.png attr = title.split(".")[0]; // 截取到 --> "C:\fakepath\编辑发起状态的执行人表单" var reg = new RegExp('[\u4e00-\u9fa5]+

php结合正则获取字符串中数字

  这篇文章主要给大家汇总介绍了php结合正则获取字符串中数字的几种方法,十分的简单实用,有需要的小伙伴可以参考下. php结合正则获取字符串中数字 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 <?php $patterns = "/d+/"; //第一种 //$patterns = "/d/"; //第二种 $st

Java获取代码中方法参数名信息的方法_java

前言 大家都知道随着java8的使用,在相应的方法签名中增加了新的对象Parameter,用于表示特定的参数信息,通过它的getName可以获取相应的参数名.即像在代码中编写的,如命名为username,那么在前台进行传参时,即不需要再编写如@Parameter("username")类的注解,而直接就能进行按名映射. 如下的代码参考所示: public class T { private interface T2 { void method(String username, Stri

php返回字符串中所有单词的方法_php技巧

本文实例讲述了php返回字符串中所有单词的方法.分享给大家供大家参考.具体分析如下: 这段代码返回字符串中的所有单词,当$distinct=true时去除重复元素.代码如下: <?php function split_en_str($str,$distinct=true) { preg_match_all('/([a-zA-Z]+)/',$str,$match); if ($distinct == true) { $match[1] = array_unique($match[1]); } so

java从字符串中提取数字的简单实例_java

随便给你一个含有数字的字符串,比如: String s="eert343dfg56756dtry66fggg89dfgf"; 那我们如何把其中的数字提取出来呢?大致有以下几种方法,正则表达式,集合类,还有就是String类提供的方法. 1 String类提供的方法: package 测试练习; import Java.util.*; public class get_StringNum { /** *2016.10.25 */ public static void main(Strin

java统计字符串中重复字符出现次数的方法_java

本文实例讲述了java统计字符串中重复字符出现次数的方法.分享给大家供大家参考,具体如下: package com; import org.junit.Test; /** * 统计一个字符串的重复字符出现的次数 * * @author zdw * */ public class StringTest { @Test public void test() { String s = "fdfaacceeeeeeeeeeeegghikkkkkoooo"; count(s); } public

php获取字符串中各个字符出现次数的方法_php技巧

本文实例讲述了php获取字符串中各个字符出现次数的方法.分享给大家供大家参考.具体实现方法如下: <?php //获取字符串是哪一个字符出现的字数最多 $str = "sdfhletlsflahlajgfd;lsje;r;wj;ralajfe149253573"; //方法一 $arr = str_split($str); //字符串分隔到数组中 $arr = array_count_values($arr); //用于统计数组中所有值出现的次数,返回一个数组 //键名为原数组的