iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Android中怎么利用正则匹配图片
  • 517
分享到

Android中怎么利用正则匹配图片

android 2023-05-31 00:05:16 517人浏览 八月长安
摘要

这期内容当中小编将会给大家带来有关Android中怎么利用正则匹配图片,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。xml<?xml version="1.0"&nbs

这期内容当中小编将会给大家带来有关Android中怎么利用正则匹配图片,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout  xmlns:android="Http://schemas.android.com/apk/res/android"  xmlns:app="http://schemas.android.com/apk/res-auto"  xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"  android:layout_height="match_parent" tools:context="com.example.mygesture.MainActivity">    <ViewFlipper    android:layout_width="match_parent"    android:layout_height="match_parent"    android:id="@+id/vf_main_one"    ></ViewFlipper></LinearLayout>

Activity

控件中,我放入的是手机内存中的所有图片,所有必须先获取读取的权限

在 AndroidManifest.xml 文件中获取权限 

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>package com.example.mygesture;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.os.Environment;import android.os.PatternMatcher;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.GestureDetector;import android.view.MotionEvent;import android.widget.ImageView;import android.widget.Toast;import android.widget.ViewFlipper;import java.io.InputStream;import java.util.LinkedList;import java.util.List;import java.util.regex.Matcher;import java.util.regex.Pattern;public class MainActivity extends AppCompatActivity {  private ViewFlipper viewFlipper;  private List<ImageView> list=new LinkedList<>();  private GestureDetector jc;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);//取到控件viewFlipper = (ViewFlipper)findViewById(R.id.vf_main_one); //判断内存卡,是否可用    if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){ //取到内存卡的绝对路径      String abspath=Environment.getExternalStorageDirectory().getAbsolutePath();     //建立文件对象      File file=new File(abspath);      //取到内存卡内的所有文件、文件夹      File [] filetwo=file.listFiles();      for (File file1 : filetwo) {        try {         //调用文件的递归方法          TraversalSearch(file1);        } catch (IOException e) {          e.printStackTrace();        }      }    }    //集合中的图片是,内存卡内的所有图片    for (ImageView imageView : list) {    //把集合中的所有图片加入到(ViewFlipper)控件中      viewFlipper.addView(imageView);    }   //建立手势检测器,参数一:上下文 参数二 检测器的检测事件    jc = new GestureDetector(this,new GestureDetector.OnGestureListener(){      @Override      public boolean onDown(MotionEvent e) {        //按下触发        return false;      }      @Override      public void onShowPress(MotionEvent e) {      }      @Override      public boolean onSingleTapUp(MotionEvent e) {         //轻按触发        return false;      }      @Override      public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {        //移动触发        return false;      }      @Override      public void onLongPress(MotionEvent e) {         //常按 触发      }      @Override //滑动完后,触发      public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {//本方法,参数一:起始位置 参数二:结束位置 ,参数三四:x轴 y轴              if(e2.getX()-e1.getX()>200){          //显示上一张          viewFlipper.showPrevious();          Toast.makeText(MainActivity.this, "   001", Toast.LENGTH_SHORT).show();        }        if(e1.getX()-e2.getX()>200){          //显示下一张          viewFlipper.showNext();          Toast.makeText(MainActivity.this, "   004", Toast.LENGTH_SHORT).show();        }        return false;      }    });  }  @Override //重写 触摸 回调函数  public boolean onTouchEvent(MotionEvent event) {    //给手势检测器设定触摸函数,必写!    return jc.onTouchEvent(event);  }// 查询所有文件的递归方法  public void TraversalSearch(File file) throws IOException {    if(file.isDirectory()){      File [] filetwo=file.listFiles();      for (File file1 : filetwo) {         TraversalSearch(file1);       }    }else{      String name=file.getName();      //图片格式      String regStr = "[Gg][Ii][Ff]|[Jj][Pp][Gg]|[Bb][Mm][Pp]|[Jj][Pp][Ee][Gg]";      //把正则 匹配的格式放入 类中      Pattern pattern = Pattern.compile(regStr);      //把需要匹配的,放入      Matcher matcher = pattern.matcher(name);      //匹配结果,符合为true 反之false      if(matcher.find()){        ImageView image=new ImageView(this);//通过绘图工厂,利用文件路径取到,文件 Bitmap bitmap= BitmapFactory.decodeFile(file.getAbsolutePath().trim());      //把图片文件设置入图片控件内        image.setImageBitmap(bitmap);        if(list.size()<20){         //我只加入二十个图片,过多,内存溢出          list.add(image);        }      }    }  }}

上述就是小编为大家分享的Android中怎么利用正则匹配图片了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网精选频道。

--结束END--

本文标题: Android中怎么利用正则匹配图片

本文链接: https://www.lsjlt.com/news/222266.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android中怎么利用正则匹配图片
    这期内容当中小编将会给大家带来有关Android中怎么利用正则匹配图片,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。xml<xml version="1.0" ...
    99+
    2023-05-31
    android
  • php怎么利用正则只匹配汉字
    在php中,可以利用正则表达式“/[\x{4e00}-\x{9fff}]+/u”和preg_match_all()函数来只匹配汉字,语法“preg_match_all("/[\x{4e00}-\x{9fff}”。preg_matc...
    99+
    2023-05-14
    php 正则表达式
  • JavaScript中怎么利用正则表达式判断匹配规则
    这篇文章将为大家详细讲解有关JavaScript中怎么利用正则表达式判断匹配规则,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。字符串是编程时涉及到的最多的一...
    99+
    2024-04-02
  • Python中怎么利用正则表达式匹配子串
    本篇文章给大家分享的是有关Python中怎么利用正则表达式匹配子串,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。获取Python正则表达式所匹配的子串(Get the part...
    99+
    2023-06-17
  • php怎么利用正则匹配去掉html标签
    在Web开发中,HTML是不可避免的一部分。然而,在某些情况下,我们可能需要从HTML源代码中提取文本内容,而不包括任何HTML标记。这就是PHP正则表达式的用武之地。 在本文中,我们将学习如何使用PHP正则表达式删除HTML标签,并...
    99+
    2023-05-14
    php 正则
  • PHP中怎么利用正则表达式实现多行匹配
    本篇文章给大家分享的是有关PHP中怎么利用正则表达式实现多行匹配,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。例如,对整个文件(尤其是多行文本)进行匹配查找。使用ereg()对...
    99+
    2023-06-17
  • php如何利用正则只匹配汉字
    这篇文章主要介绍“php如何利用正则只匹配汉字”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何利用正则只匹配汉字”文章能帮助大家解决问题。在php中,可以利用正则表达式“/[\x{4e00}...
    99+
    2023-07-05
  • C#中怎么利用正则表达式匹配相关字符串
    今天就跟大家聊聊有关C#中怎么利用正则表达式匹配相关字符串,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。使用C#中使用正则表达式System.Text.RegularExpressi...
    99+
    2023-06-17
  • php怎么利用正则表达式只匹配身份证
    正则表达式是程序中常用的一种工具,它可以使用一系列的规则去匹配和修改文本。在PHP中,正则表达式的使用非常重要,主要用于对字符串的匹配,替换和提取等操作。在所有的正则表达式中,身份证号码的匹配是一道经典的题目。在PHP中,我们可以通过一系列...
    99+
    2023-05-14
    php 正则 正则表达式
  • 正则表达式从HTML中匹配img标签的图片地址
    目录前言分析正则表达式总结前言 有玩过爬虫的人应该都有过在又臭又长的HTML中找寻信息的经历,虽然有各种工具和各种框架可以辅助查找,但是解析HTML的规则也是人想的,制定规则也是十分...
    99+
    2024-04-02
  • Qt之QRegularExpression正则匹配怎么使用
    这篇文章主要介绍“Qt之QRegularExpression正则匹配怎么使用”,在日常操作中,相信很多人在Qt之QRegularExpression正则匹配怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答...
    99+
    2023-07-05
  • C++中使用正则匹配问题
    目录C/C++可以用正则表达式吗?若要判断一个输入的QQ号是否有效,如何判断?正则程序库(regex)正则文法(regex syntaxes)匹配(Match)搜索(Search)替...
    99+
    2022-11-13
    C++正则匹配 使用正则匹配 C++正则
  • 怎么在Android开发中实现一个正则匹配功能
    这篇文章给大家介绍怎么在Android开发中实现一个正则匹配功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在Android开发中,可能也会遇到一下输入框的合法性验证,这时候最常用的就应该是正则表达式去做一些匹配了,...
    99+
    2023-05-31
    android roi
  • php如何利用正则匹配去掉html标签
    这篇文章主要介绍“php如何利用正则匹配去掉html标签”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何利用正则匹配去掉html标签”文章能帮助大家解决问题。在本文中,我们将学习如何使用PH...
    99+
    2023-07-05
  • php怎么使用正则匹配去掉html
    php使用正则匹配去掉html方法:1、创建一个php示例文件;2、定义一个HTML标签的字符串“$html_string”;3、使用正则表达式“/<[^<]+>/”匹配所有html标签;4、使用“preg_replace...
    99+
    2023-05-24
    php
  • Notepad++怎么使用正则表达式匹配
    今天小编给大家分享一下Notepad++怎么使用正则表达式匹配的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Notepad+...
    99+
    2023-07-06
  • 利用正则表达式匹配浮点型数据
    目录前言:正则表达式Java代码附:正则表达式(同时匹配整型数和浮点数)总结前言: 在开发中我们常常会使用到正则表达式,但很奇怪的是,每次你在使用正则表达式的时候你都发现你不会写,不...
    99+
    2024-04-02
  • Python中怎么使用正则表达式及正则表达式匹配规则是什么
    1 导库import re2 使用模板re_pattern = re.compile(pattern, flags=0) result = re.findall(re_pattern,string)3 说明参数描述pattern匹配的正则表...
    99+
    2023-05-14
    Python
  • Python中怎么使用正则表达式匹配方法
    本篇文章为大家展示了Python中怎么使用正则表达式匹配方法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。测试正则表达式是否匹配字符串的全部或部分regex=ur"" ...
    99+
    2023-06-17
  • 正则表达式怎么匹配数字
    这篇文章给大家分享的是有关正则表达式怎么匹配数字的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。高效正则表达式匹配数字实例:^[1-9]\d*$      //匹配正整数&n...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作