让代码更简单

安卓Java字符串String函数构造取文本中间

重要:本文最后更新于2018-01-22 12:56:17,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

字符串函数不论在哪类语言中都是比较重要的,也是用得比较多的函数。上周博主在写APP的时候需要取得网页中的链接,就曾用到过这个。

常用字符串函数

String.length()  //取字符串长度,返回整形字符串长度数值

String.indexOf(str)  //取字符串str起始字母位与string字符串的第几个位置,返回整形数值

String.substring(int1,int2)   //取出字符串String中第int1开始到int2结束的所有字符,返回所取得的字符串

chazhao为自定义方法名,第一个字符串型数据neirong为你想从哪些字符串中寻找数据,第二个为寻找数据的左边内容,第三个为寻找数据的右边内容。

复制
public static String chazhao(String neirong,String zuobian,String youbian) {
 String sssString=null;
 sssString=neirong.substring(zuobian.length()+neirong.indexOf(zuobian), neirong.indexOf(youbian));
 return sssString;
 }

例如下面的代码是从网页中获取网页源码,并通过正则匹配取得内容,再通过上面的取文本中间取得图片链接:

复制
public class test {

 /**
 * @param args
 */
 public static void main(String[] args) {
 // TODO Auto-generated method stub
 // TODO Auto-generated method stub
 //System.out.println();
 String sssStr=null;
 String resultstring=null;
 String resultstr=null;
 String aaaa=null;
 sssStr=getweb("http://www.taotu8.net/gc/list_1_1.html", 5000, "GBK");
 resultstring=chazhao(sssStr,"<div class=\"mg piclist\">","<div class=\"aright\">");
 Pattern pattern = Pattern.compile("(<li>([\\s\\S]*?)</li>)");
 Matcher matcher = pattern.matcher(resultstring);
 while (matcher.find()) {
 resultstr=matcher.group();
 //Daimadog dm=new Daimadog();
 aaaa= chazhao(resultstr,"data-original='","' alt=");
 System.out.println(aaaa+"\n");

 }
 
 }

 
 public static String chazhao(String neirong,String zuobian,String youbian) {
 String sssString=null;
 sssString=neirong.substring(zuobian.length()+neirong.indexOf(zuobian), neirong.indexOf(youbian));
 return sssString;
 }
 public static String getweb(String path,int timeout,String econd){
 String resultstring=null;
 try {
 URL url=new URL(path);
 HttpURLConnection httpconn=(HttpURLConnection) url.openConnection();
 httpconn.setRequestMethod("GET");
 httpconn.setReadTimeout(timeout);
 InputStreamReader in=new InputStreamReader(httpconn.getInputStream(),econd);
 BufferedReader bf=new BufferedReader(in);
 String jg=null;
 while ((jg=bf.readLine())!=null){
 resultstring=resultstring+jg;
 }
 } catch (MalformedURLException e) {
 e.printStackTrace();
 } catch (IOException e) {
 e.printStackTrace();
 }
 return resultstring;
 }
 }

写个APP太麻烦了,这里就用Java代码给大家演示下,效果在安卓中是一样的,结果如下图。

代码狗安卓开发教程

 

感觉很棒!可以赞赏支持我哟~

0 打赏

评论 (0)

登录后评论
QQ咨询 邮件咨询 狗哥推荐