精华内容
下载资源
问答
  • 参考博客1 参考博客2 还有java中replace方法的使用 这辈子坚持与不坚持都不可怕,怕的是独自走在坚持的道路上!!

    参考博客1
    参考博客2

    还有java中replace方法的使用

    这辈子坚持与不坚持都不可怕,怕的是独自走在坚持的道路上!!

    展开全文
  • 最近有个需求是要提取一段字符串中的[]的内容,运用的是Java中的Pattern.compile函数 代码如下: // 定义规则 String pattern = "(\\[+)(\\w+)\\.(\\w+)(\\]+)"; //Pattern.compile函数 Matcher matcher = Pattern...

         最近有个需求是要提取一段字符串中特定范围内的内容,查找资料后,使用的是Java中的Pattern.compile函数来实现对指定字符串的截取。记录下来查找的知识和应用,方便以后的查看。

    Pattern.compile函数语法

    // Pattern.compile函数语法
    Pattern Pattern.compile(String regex, int flag)
    

    Pattern.compile函数中两个参数
    1、regex 表示定义的规则
    2、flag 表示设置的参数类型,主要包含以下几种情况:
    (1)Pattern.CASE_INSENSITIVE(?i) 默认情况下,大小写不明感的匹配只适用于US-ASCII字符集。让表达式忽略大小写进行匹配。
    (2)Pattern.COMMENTS(?x) 此种模式下,匹配时会忽略表达式中空格字符(表达式里的空格,tab,回车)。注释从#开始,一直到这行结束。
    (3)Pattern.UNIX_LINES(?d) 此种模式下,只有’\n’才被认作一行的中止,并且与’.’,’^’,以及’$’进行匹配。
    (4)Pattern.MULTILINE(?m) 此种模式下,上箭头和单引号分别匹配一行的开始和结束。此外,’^‘仍然匹配字符串的开始,’’也匹配字符串的结束。默认情况下,这两个表达式仅仅匹配字符串的开始和结束。
    (5)Pattern.DOTALL:此种模式下,表达式’.‘可以匹配任意字符,包括表示一行的结束符。默认情况下,表达式’.'不匹配行的结束符。

    项目中程序例子

         在项目中运用的 flagCASE_INSENSITIVE参数,此处主要是截取中括号中的内容,截取的实现代码如下:

    //需要截取的字符串
    String splitStr =[user:name] = select name from user”;
    // 定义规则
    String pattern = "(\\[+)(\\w+)\\:(\\w+)(\\]+)";
    //Pattern.compile函数
    Matcher matcher = Pattern.compile(pattern, Pattern.CASE_INSENSITIVE).matcher(splitStr);
    while (matcher.find()) { //表示往下遍历
    	//截取出来的字符串 [user:name]
    	String allcon = matcher.group(0);
    	//截取的开始位置 [
    	String tableJoin1 = matcher.group(1);
    	//截取出来的表名 user
    	String tableName = matcher.group(2);
    	//截取出来的字段名 name
    	String filed = matcher.group(3);
    	//截取的结束位置 ]
    	String tableJoin4 = matcher.group(4);
    }
    

         本程序中定义的规则表达式主要提取四个括号内的内容,以\\符号为开始,后面跟截取的符号,w表示匹配的字符。按照此规则就可以提取出来相应的参数:tableName 表示提取的表名,filed 表示提取的字段名。

    博客参考:

    【1】https://blog.csdn.net/xinjie1224/article/details/41209017

    展开全文
  • JAVA 提取字符串常用的两种方法 1.通过subString()方法来对字符串进行操作 2.使用正则表达式+Pattern()和Matcher()

    1.通过subString()方法来对字符串进行操作

    • subString()语法:
      public String substring(int beginIndex)

      public String substring(int beginIndex, int endIndex)
      1、取得的字符串长度为:endIndex - beginIndex;
      2、从beginIndex开始取,到endIndex结束,从0开始数,其中不包括endIndex位置的字符
    • 示例:
            String str1="abdc686512ffsc1267d";
            String substr1=str1.substring(4);
            
            //指定区间(不包括结束索引处)
            String substr2=str1.substring(4, 10);
            System.out.println("substr1="+substr1);
            System.out.println("substr2="+substr2);
            System.out.println("*****************************");
            
            //结合使用indexOf()灵活截取示例
            String str2="<![CDATA[3-4级]]>";
            String cutstr=str2.substring(9, str2.indexOf("]]"));
            System.out.println("cutstr="+cutstr);
    
    结果:
    substr1=686512ffsc1267d
    substr2=686512
    *****************************
    cutstr=3-4级
    

    2.使用正则表达式+Pattern()和Matcher()

    • Pattern 类:
      pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。要创建一个 Pattern 对象,你必须首先调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则表达式作为它的第一个参数。
    • Matcher 类:
      Matcher 对象是对输入字符串进行解释和匹配操作的引擎。与Pattern 类一样,Matcher 也没有公共构造方法。你需要调用 Pattern 对象的 matcher 方法来获得一个 Matcher 对象。
    • 完整示例
            System.out.println("正则表达式:");
            //正则表达式
            String str2="<![CDATA[3-4级]]>";
            String fengli="\\[CDATA\\[(.*?)\\]\\]>";			//提取风级的正则表达式
            Pattern pafengli=Pattern.compile(fengli);
            Matcher matfengli = pafengli.matcher(str2);
            if(matfengli.find())
            {
            	cutstr = matfengli.group(1);  //group为捕获组
            	System.out.println("cutstr="+cutstr);
            }
            else
            	System.out.println("没找到");
    
    正则表达式:
    cutstr=3-4级
    

    注意: String fengli="\\[CDATA\\[(.*?)\\]\\]>";中的斜杠为转义标志


    关于需要转义的字符详见JAVA正则表达式中需要转义的字符
    JAVA更多对String的基本操作JAVA 字符串三个常用操作(查找子串、截取字符串、分割字符串)
    最全的常用正则表达式大全: 点击查看
    注:此博文是在做调用气象网的对外接口获取天气预报时,因为需要提取风级的当中的具体数字才复习了一下正则表达式的使用顺便写下的博文,例子介绍的不多,敬请见谅。更多正则表达式例子可点击上方相应链接查看。

    展开全文
  • JAVA中截取字符串中指定字符串

    千次阅读 2019-09-06 15:14:06
    JAVA中截取字符串中指定字符串 举个例子,需要截取“abcdef”的“cde”。 场景1:获取该字符串的下标。输出“cde”。 public static void main(String[] args) { // TODO Auto-generated method stub String ...

    JAVA中截取指定字符串

    举个例子,需要截取“abcdef”中的“cde”。
    场景1:获取该字符串的下标。输出“cde”。

    public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		String data = "abcdef";
    		String out = data.substring(2,5);
    		System.out.println(out);
    	}
    

    输出结果:
    在这里插入图片描述
    场景2:根据字符串内容。输出“cde”

    public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		String data = "abcdef";
    		String out = data.substring(data.indexOf("c"),data.indexOf("f"));
    		
    		System.out.println(out);
    	}
    

    输出结果:
    在这里插入图片描述

    展开全文
  • java中如何提取字符串中的所有汉字

    千次阅读 2018-04-10 13:36:40
    Pattern.matcher(CharSequence input) 对指定输入的字符串创建一个Matcher对象 replaceAll() 方法使用给定的参数 replacement 替换字符串所有匹配给定的正则表达式的子字符串。 package udf; import java....
  • * end 要剔除内容的结尾字符--例:">" * return 返回剔除后得到的结果--例:"dsadsada啦啦啦123123*&*&*>" * */ public static String setText(String content, String start, String end) { // Log.e("截取前++-...
  • 业务要求:截取传过来的字符串,截取出现的<small hidden="">2</small>中间的值,进行数据库更新操作。 //需要处理的字符串(截取字段如:<small hidden="">2</small>获取中间) String ...
  • package ... import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern;... * @description 截取字符串中的img标签的src地...
  • 需求://从字符串提取指定的字符串,提取字符串的手机号; String s="ssfsfhshfsfjjs13293016789yfdiyifdsafyasif"; 示例代码: package com.正则表达式; import java.util.regex.Matcher; import java...
  • 提取文件名中指定字符串 java实现

    千次阅读 2018-01-05 16:14:07
    现在需要做的是,将时间小于某指定时间的文件全部删除。这里的需求是 删除当前时间五天前的所有文件 五天前的时间这样表示: Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DATE, -5); Stri
  • 1:提取字符串str的首个字符,然后将整个字符串str与首个字符相同的字符,全部替换为空字符串 "" ,得到新字符串tempStr,得到两个字符串的长度差即可。 2:利用hash-map的 key唯一特性,逐个将字符串str里的字符...
  • // 字符串 cellValue = cell.getStringCellValue(); break; case Cell.CELL_TYPE_BOOLEAN: // Boolean cellValue = cell.getBooleanCellValue() + ""; break; case Cell.CELL_TYPE_FORMULA: // 公式 ...
  • //提取字符串末尾的数字:封妖塔守卫71 == &gt;&gt; 71 String s = monster.getMonsterName(); Pattern p2 = Pattern.compile(reg); Matcher m2 = p2.matcher(s); int history...
  • Java字符串中获取url

    千次阅读 2020-02-08 19:58:16
    1.能从一段字符串中获取一段url,这个url可以是http开头,也可以是https开头 public static String findUrlByStr(String data){ // data = "地球亚洲中国https://www.baidu.com/s?wd=java 厉害厉害!"; Pattern...
  • 一个字符串(公式): String param = "abc * def - tte"; 用到了一组符号的一种或几种符号: String[] typeId = new String[]{"+", "-", "*", "/", "(", ")"}; 得到结果: abc , def , tte 可以拼接成一...
  • java中字符串查找与提取

    万次阅读 2016-05-12 20:33:30
    java String查找与提取 四种方法
  • java字符串提取数字

    千次阅读 2018-09-14 17:08:52
    * 提取字符串中的数字 * @param strInput * @return */ public static String getNum(String strInput) { //匹配指定范围内的数字 String regEx = "[^0-9]"; //Pattern是一个正则表达式经...
  • java字符串中提取数字

    千次阅读 2017-05-08 18:33:10
    http://www.cnblogs.com/android-html5/archive/2012/06/02/2533926.html
  • 前言 在做项目的时候,会需要对数据进行加工处理,如果遇到仅提取汉字的情况,可以使用以下代码,用正则表达式来取汉字,下方代码... //写的一个字符串 System.out.println(string.replaceAll("[^\\u4e00-\\u9fa5]"...
  • PS: String str = "房估字(2014)第YPQD0006号"; String www= str.substring(str.indexOf("第")+1,str.indexOf("号")); System.out.println(www) 结果为: YPQD0006
  • charAt(int index)方法是一个能够用来检索特定索引下的字符的String实例的方法. charAt()方法返回指定索引位置的char值。...警告:在字符串s越界访问字符是一种常见的程序设计错误。为避免此类错误要确保...
  • 我们在编程的时候可能要用到提取字符串中的某个位置的字符串: 只需调用:public char charAt(int index)方法即可 intdex:表示的是提取的字符在字符串的位置,从0开始 返回值类型是chat 大写转换为小写是调用...
  • Java截取字符串:主要有substring()、split()、substringBefore()、substringBeforeLast()四种,其实也是三种,因为第三第四其实就是一种,他们是String工具类提供的截取方法; 首先说的是正则的这种截取方法: ...
  • import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.Im
  •  * 描述:获取字符串中被两个字符(串)包含的所有数据  * @param str 处理字符串  * @param start 起始字符(串)  * @param end 结束字符(串)  * @param isSpecial 起始和结束字符是否是特殊字符  * @...
  • Java正则循环提取指定字符串示例

    千次阅读 2019-07-08 21:57:57
    String msg = "klafj;lsdkaf234234lkjlkj32;412340909dsfgsfdg90324"; Pattern p = Pattern.compile("(?<num>\\d+)"); Matcher m = p.matcher(msg);...while (m.find()) { System.out.println(m.group("num...
  • Java中字符串操作方法总结

    千次阅读 2014-05-05 18:40:20
    Java中字符串操作方法总结
  • * 匹配以("fieldName":")开头,以(")结尾的字符串,并且存储到分组 * 正则表达式匹配字段值 * 不包含空值 * (?<=(href=")) 表示 匹配以(href=")开头的字符串,并且捕获(存储)到分组 * (?=(">)) 表示 ...
  • Java提取字符串(substring())

    千次阅读 2019-07-03 20:04:12
    String 类的 substring() 方法用于对字符串进行提取,该方法主要有两种重载...调用时,括号是需要提取字符串的开始位置,方法的返回值是提取的字符串。例如: String str="我爱 Java 编程"; String result=...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 68,653
精华内容 27,461
关键字:

java提取字符串中的指定字符

java 订阅