精华内容
下载资源
问答
  • java字符串拆分后获取拆分值
    2021-03-05 15:06:20

    您可以使用3个捕获组,并为第二组更改:

    (*?)(大于= |< = |<> |> |≤)(*).

    说明

    >(.*?)匹配任何字符零次或多次非贪婪

    >(> = |< = |<> |> | =或< =或<>或>或者<

    >(.*)匹配任何字符零次或多次

    例如:

    String regex = "(.*?)(>=|<=|<>|>|

    String string = "FEES >= 200";

    Pattern pattern = Pattern.compile(regex);

    Matcher matcher = pattern.matcher(string);

    if(matcher.find()) {

    System.out.println("Splitted Relational Operator: " + matcher.group(2));

    System.out.println("Group 1: " + matcher.group(1) + " group 3: " + matcher.group(3));

    }

    更多相关内容
  • java字符串拆分 空字符Java String split() method is used to split the string into a string array based on the provided regular expression. Java String split()方法用于根据提供的正则表达式将字符串拆分...

    java字符串拆分 空字符

    Java String split() method is used to split the string into a string array based on the provided regular expression.

    Java String split()方法用于根据提供的正则表达式将字符串拆分为字符串数组。

    Java字符串拆分 (Java String split)

    Sometimes we have to split String in Java, for example splitting data of CSV file to get all the different values.

    有时我们必须在Java中拆分String,例如拆分CSV文件的数据以获取所有不同的值。

    String class provides two useful methods to split a string in java.

    字符串类提供了两种有用的方法来在Java中拆分字符串。

    1. public String[] split(String regex): This java string split method is used to split the string based on the given regular expression string. The whole string is split and returned in the form of a string array. This method was introduced in Java 1.4. Notice that the trailing empty strings are not included in the returned string array. Let’s look at a simple java string split example to understand this.
      String s = "abcaada";
      System.out.println(Arrays.toString(s.split("a")));

      Above code will produce output as [, bc, , d]. Notice that the last empty string is excluded from the returned string array.

      public String[] split(String regex) :此java字符串split方法用于根据给定的正则表达式字符串拆分字符串。 整个字符串被拆分并以字符串数组的形式返回。 此方法是Java 1.4中引入的。 请注意,返回的字符串数组中不包含结尾的空字符串。 让我们看一个简单的java字符串拆分示例以了解这一点。

      上面的代码将输出为[, bc, , d] 。 请注意,最后一个空字符串从返回的字符串数组中排除。

    2. public String[] split(String regex, int limit): This java string split method is used when we want the string to be split into a limited number of strings. For example, let’s say we have a String variable that contains name and address with comma as a delimiter. Now, the address can have commas in them, so we can use this method. A short example of this string split is given below.
      String s = "Pankaj,New York,USA";
      String[] data = s.split(",", 2);
      System.out.println("Name = "+data[0]); //Pankaj
      System.out.println("Address = "+data[1]); //New York,USA

      public String[] split(String regex, int limit) :当我们希望将字符串拆分为有限数量的字符串时,可以使用此java字符串拆分方法。 例如,假设我们有一个String变量,其中包含名称和地址,并以逗号作为分隔符。 现在,该地址中可以包含逗号,因此我们可以使用此方法。 下面是该字符串拆分的简短示例。
    3. Note that the first method above actually utilizes the second method by passing limit as 0.

      请注意,上述第一种方法实际上是通过将limit传递为0来利用第二种方法。

      public String[] split(String regex) {
          return split(regex, 0);
      }

    Java String拆分要点 (Java String split important points)

    Some important points about java String split method are:

    关于Java字符串拆分方法的一些重要点是:

    • The array returned by this method contains each substring of this string that is terminated by another substring that matches the given expression or is terminated by the end of the string. The substrings in the array are in the order in which they occur in this string.

      此方法返回的数组包含此字符串的每个子字符串,该子字符串由与给定表达式匹配的另一个子字符串终止或由字符串的结尾终止。 数组中的子字符串按照它们在此字符串中出现的顺序排列。
    • If the regex doesn’t match any part of the input string then the resulting array has just one element, namely this string.

      如果正则表达式与输入字符串的任何部分都不匹配,则结果数组只有一个元素,即此字符串。
    • The limit parameter controls the number of times the pattern is applied and therefore affects the length of the resulting array. If the limit n is greater than zero then the pattern will be applied at most n – 1 time, the array’s length will be no greater than n, and the array’s last entry will contain all input beyond the last matched delimiter.

      If n is non-positive then the pattern will be applied as many times as possible and the array can have any length.

      If n is zero then the pattern will be applied as many times as possible, the array can have any length, and trailing empty strings will be discarded.

      如果n为非正数,则将尽可能多地应用该模式,并且数组可以具有任何长度。

      如果n为零,则该模式将被尽可能多地应用,该数组可以具有任意长度,并且尾随的空字符串将被丢弃。

    Java字符串拆分示例 (Java String split example)

    Here is an example of java String split method.

    这是java字符串拆分方法的示例。

    package com.journaldev.util;
    
    import java.util.Arrays;
    
    public class JavaStringSplit {
    
    	/**
    	 * Java String split example
    	 * 
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		String line = "I am a java developer";
    
    		String[] words = line.split(" ");
    
    		String[] twoWords = line.split(" ", 2);
    
    		System.out.println("String split with delimiter: " + Arrays.toString(words));
    
    		System.out.println("String split into two: " + Arrays.toString(twoWords));
    
    		// split string delimited with special characters
    		String wordsWithNumbers = "I|am|a|java|developer";
    
    		String[] numbers = wordsWithNumbers.split("\\|");
    
    		System.out.println("String split with special character: " + Arrays.toString(numbers));
    
    	}
    }

    Below image shows the output produced by the above String split example program.

    下图显示了上面的String split示例程序产生的输出。

    We can use a backslash to use java regular expression special characters as normal characters like I have used pipe (|) special character in the above program.

    我们可以使用反斜杠将Java正则表达式特殊字符用作普通字符,就像我在上述程序中使用竖线(|)特殊字符一样。

    That’s all for a quick roundup on java string split example.

    这就是对Java字符串拆分示例的快速汇总。

    Reference: API Doc

    参考: API文档

    翻译自: https://www.journaldev.com/791/java-string-split

    java字符串拆分 空字符

    展开全文
  • Java字符串拆分详解

    2021-08-10 10:23:54
    说到 Java 字符串拆分,我们可能会不假思索“这有什么难的,直接上 String 类的 split() 方法不就行了!”假如你真的这么觉得,那可要真的是大错特错了。其中缘由,且听我细细道来。 假如现在有这样一串字符“hello ...

    说到 Java 字符串拆分,我们可能会不假思索“这有什么难的,直接上 String 类的 split() 方法不就行了!”假如你真的这么觉得,那可要真的是大错特错了。其中缘由,且听我细细道来。

    假如现在有这样一串字符“hello world,一个有趣的程序”,需要按照中文的逗号“,”进行拆分,这意味着第一串字符为逗号前面的“hello world”,第二串字符为逗号后面的“一个有趣的程序”。另外,在拆分之前,要先进行检查,判断一下这串字符是否包含逗号,否则应该抛出异常。

    public class Test {

    public static void main(String[] args) {

    String cmower = “hello world,一个有趣的程序”;

    if (cmower.contains(",")) {

    String [] parts = cmower.split(",");

    System.out.println(“第一部分:” + parts[0] +" 第二部分:" + parts[1]);

    } else {

    throw new IllegalArgumentException(“当前字符串没有包含逗号”);

    }

    }

    }

    这段代码看起来挺严谨的,对吧?程序输出的结果完全符合预期:

    第一部分:hello world 第二部分:一个趣的程序员

    这是建立在字符串是确定的情况下,最重要的是分隔符是确定的。否则,麻烦就来了。

    大约有 12 种英文特殊符号,如果直接拿这些特殊符号替换上面代码中的分隔符(中文逗号),这段程序在运行的时候就会出现以下提到的错误。

    反斜杠 (ArrayIndexOutOfBoundsException)

    插入符号 ^(同上)

    美元符号 $(同上)

    逗点 .(同上)

    竖线 |(正常,没有出错)

    问号 ?(PatternSyntaxException)

    星号 *(同上)

    加号 +(同上)

    左小括号或者右小括号 ()(同上)

    左方括号或者右方括号

    左大括号或者右大括号 {}(同上)

    看到这,可能有小伙伴会说,“这不是钻牛角尖嘛”,不不不,做技术就应该秉持严谨的态度,否则,很容易出现致命的错误。

    那遇到特殊符号该怎么办呢?上正则表达式呗。

    正则表达式是一组由字母和符号组成的特殊文本,它可以用来从文本中找出满足你想要的格式的句子。

    解决了心病之后,我们来用英文逗点“.”来替换一下分隔符:

    String cmower = “hello world,一个有趣的程序”;

    if (cmower.contains(".")) {

    String [] parts = cmower.split("\.");

    System.out.println(“第一部分:” + parts[0] +" 第二部分:" + parts[1]);

    }

    在使用 split() 方法的时候,就需要使用正则表达式 \. 来替代特殊字符英文逗点“.”了。为什么用两个反斜杠呢?因为它本身就是一个特殊字符,需要先转义。

    也可以使用字符类 [] 来包含英文逗点“.”,它也是一个正则表达式,用来匹配方括号中包含的任意字符。

    cmower.split("[.]");

    除此之外, 还可以使用 Pattern 类的 quote() 方法来包裹英文逗点“.”,该方法会返回一个使用 \Q\E 包裹的字符串。

    此时,String.split() 方法的使用示例如下所示:

    String [] parts = cmower.split(Pattern.quote("."));

    当通过调试模式进入 String.split() 方法源码的话,会发现以下细节:

    return Pattern.compile(regex).split(this, limit);

    String 类的 split() 方法调用了 Pattern 类的 split() 方法。也就意味着,我们字符串拆分有了新的选择,可以不使用 String 类的 split() 方法了。

    public class TestPatternSplit {

    /**

    • 使用预编译功能,提高效率

    */

    private static Pattern twopart = Pattern.compile("\.");

    public static void main(String[] args) {

    String [] parts = twopart.split(“hello world.一个有趣的程序”);

    System.out.println(“第一部分:” + parts[0] +" 第二部分:" + parts[1]);

    }

    }

    除此之外,还可以使用 Pattern 配合 Matcher 类进行字符串拆分,这样做的好处是可以对要拆分的字符串进行一些严格的限制。

    由于模式是确定的,所以可以把 Pattern 表达式放在 main() 方法外面,通过 static 的预编译功能提高程序的效率。

    不过,使用 Matcher 来匹配一些简单的字符串时相对比较沉重一些,使用 String 类的 split() 仍然是首选,因为该方法还有其他一些牛逼的功能。

    比如说,你想把分隔符包裹在拆分后的字符串的第一部分,可以这样做:

    String cmower = “hello world,一个有趣的程序”;

    if (cmower.contains(",")) {

    String [] parts = cmower.split("(?<=,)");

    System.out.println(“第一部分:” + parts[0] +" 第二部分:" + parts[1]);

    }

    程序输出的结果如下所示:

    第一部分:hello world, 第二部分:一个有趣的程序

    可以看到分隔符“,”包裹在了第一部分,如果希望包裹在第二部分,可以这样做:

    String [] parts = cmower.split("(?=,)");

    可能有些小伙伴很好奇,?<= 和 ?= 是什么东东啊?它其实是正则表达式中的断言模式。

    另外,假如说字符串中包含了多个分隔符,而我们只需要 2 个的话,还可以这样做:

    String cmower = “hello world,一个有趣的程序,收藏”;

    if (cmower.contains(",")) {

    String [] parts = cmower.split(",", 2);

    System.out.println(“第一部分:” + parts[0] +" 第二部分:" + parts[1]);

    }

    split() 方法可以传递 2 个参数,第一个为分隔符,第二个为拆分的字符串个数。查看该方法源码的话,你就可以看到以下内容:

    直接 substring() 到原字符串的末尾,也就是说,第二个分隔符处不再拆分。然后就 break 出循环了。来看一下程序输出的结果:

    第一部分:hello world 第二部分:一个有趣的程序,收藏

    展开全文
  • 下面小编就为大家带来一篇java 字符串分割的三种方法(总结)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • java字符串拆分、转换成数组

    千次阅读 2019-08-02 20:24:27
    //将字符串转换成字符串数组 for(int i=0; i(); i++){ str2[i] = final4.charAt(i) + ""; } //将字符串转换成整型数组 for(int i=0; i(); i++){ num[i] = Integer.parseInt(final5.substring(i,i+1)); } //...
    public class StringTest {
        public static void main(String[] args){
            String str1 = "ABCDEFG";
            String final1 = str1.substring(2,4);
            char final2 = str1.charAt(1);
            char final3 = str1.charAt(5);
            System.out.println(final1);
            System.out.println(final2);
            System.out.println(final3);
    
            String str = "A1B2C3D4E5F6G7H8";
            //将原字符串中的数字替换成无
            String final4 = str.replaceAll("\\d+","");
            //将原字符串中的字母替换成无
            String final5 = str.replaceAll("\\D+","");
            //新的纯字母字符串
            String[] str2 = new String[final4.length()];
            //新的纯数字字符串
            int[] num = new int[final5.length()];
            //将字符串转换成字符串数组
            for(int i=0; i<final4.length(); i++){
                  str2[i] = final4.charAt(i) + "";
            }
            //将字符串转换成整型数组
            for(int i=0; i<final5.length(); i++){
                num[i] = Integer.parseInt(final5.substring(i,i+1));
            }
            //遍历新的字符串数组
            for(String str2s:str2){
                System.out.print(str2s);
            }
            System.out.println();
            //遍历新的整型数组
            for(int nums:num){
                System.out.print(nums);
            }
        }
    }
    
    展开全文
  • java字符串拆分成单个字符串放到list集合 解决方法: 例如把“我是谁”拆开放到list中:http://www​.yayihouse.com/yayishuwu/chapter/1753
  • 主要介绍了Java StringUtils字符串分割转数组的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 解决方法: 例如把“我是谁”拆开放到list中 public static void main(String args[]) { String verify="我是谁"; List<... list= Stream.iterate(0, n -> ++n).limit(verify.length()) ... ...
  • java字符串拆分 空字符 介绍 拆分字符串是常见的操作。 本简短的教程将展示一些完成操作的方法。 String.split() 拆分字符串的最常见方法是使用String类中的split()方法。 它根据定界符分割给定的String并...
  • 1.实现以下2个接口 不能使用语言的基本分割组合函数(如 ... 1) 字符串拆分成数组,如"ab&&2"通过"&&"做分割符,分割得到字符串数组["ab", "2"] 2) 实现字符串组合,如["ab","2"]通过"&&"分隔符,组成字符串"ab&&2
  • Java拆分字符串

    2022-01-30 00:39:31
    据给定正则表达式的匹配拆分字符串
  • I have the String a="abcd1234" and i want to split this into String b="abcd" and Int c=1234This Split code should apply for all king of input like ab123456 and acff432 and so on.How to split this kind...
  • Java中常见的编程方案是使用空格作为分隔符来拆分字符串。例如,当我们要检索文本文档中的所有单词时,这很有用。空格是分隔每个单词的标记。拆分功能非常强大,因为您可以通过正则表达式指定分隔符。由于正则表达式...
  • 我试图在网上四处寻找将字符串拆分为字符数组的答案,但似乎找不到一个简单的方法str.split(//)似乎不像Ruby那样工作。 有没有一种简单的方法可以不循环?#1楼如果您希望只读访问该字符串,则可以直接使用数组符号。...
  • 我做了一个二进制和十进制转换类,我的想法是,用户输入字符串,它将所有转换为二进制格式.然后将它分成两半,将一半转换为十进制,然后再将字符串重新添加到一起,使其成为二进制和十进制的混合.在其他版本中,我将添加更...
  • 慕的地10843直接处理字符串的...例如,以下内容将字符串拆分为两部分,并确保两者都只包含数字:import java.util.regex.Pattern;import java.util.regex.Matcher;class SplitExample{ private static Pattern twop...
  • 咦,Java拆分字符串都这么讲究

    万次阅读 多人点赞 2020-04-30 07:50:16
    提到 Java 拆分字符串,我猜你十有八九会撂下一句狠话,“这有什么难的,直接上 String 类的 split() 方法不就拉到了!”假如你真的这么觉得,那可要注意了,事情远没这么简单。 来来来,搬个小板凳坐下。 假如现在...
  • 要在Java拆分和连接字符串,请使用以下示例中的split和join方法-示例publicclassDemo{publicstaticvoidmain(Stringargs[]){Stringmy_str="This_is_a_sample";String[]split_str=my_str.split("_",4);System.out....
  • I tried to search online to solve this question but I didn't found anything.I wrote the following abstract code to explain what I'm asking:String text = "how are you?";String[] textArray= text.splitBy...
  • java中如何拆分一个字符串

    千次阅读 2021-02-28 14:15:56
    “004-034556”为例用String#split()方法即可:String string = "004-034556";String[] parts = string.split("-");... // 034556请注意,这需要一个正则表达式,因此请记住在必要时转义特殊字符。_ 12个具...
  • 下面小编就为大家分享一篇Java中将String类型依照某个字符分割成数组的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • Java 字符串拆分

    千次阅读 2019-04-29 21:46:41
    String类提供了split()方法,将一个字符串分割为子字符串,结果作为字符串数组返回 public class Lyric { public static void main(String[] args) { String words="长亭外 古道边 芳草碧连天 晚风扶 柳笛声...
  • java 字符串拆分字符串数组

    千次阅读 2011-10-05 16:15:47
    java 字符串拆分字符串数组 用split(); if(associatedCheckMoreOldStr.length()>0){  String[] tmp = associatedCheckMoreOldStr.split("_");
  • Java中如何拆分字符串为字符数组

    千次阅读 2021-02-28 19:00:01
    题目:输入一串字符,由(){}[]组成.../*输入字符串,拆解为字符数组* 用函数s.charAt(i)来完成** */import java.util.*;//import java.lang.*;public class Char {public static void main(String[] args){String a=...
  • 由于您的字符串不在数组或列表中,因此您需要明确地分配它们.Matcher m = Pattern.compile(".{1,30}").matcher(s);String s1 = m.find() ? s.substring(m.start(), m.end()) : "";String s2 = m.find() ? s.substring...
  • java字符串分割方法

    千次阅读 2021-11-17 22:37:51
    java 分割字符串split()方法 实现功能 编写一个将字符串分段的类,传入:需分段的字符串 与 字符个数(以此个数进行分段),输出:按指定字符个数进行分段后的若干字符串(汉字算单个字符)。 功能实现要求分析 ...
  • String.split() String pronunciation = "zhī jǐn huí wén"; String[] pronunciationArray = pronunciation.split(" ");
  • 我有一个字符串:String modulesToUpdate = "potato:module1,tomato:module2";我想从中得到它:module1module2首先,我必须用“,”然后用“:”拆分它所以,我这样做了:String files[] = modulesToUpdate.split(",");...
  • Java中的字符串分割 .

    千次阅读 2021-03-01 06:38:12
    Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项:java.lang.string.splitsplit 方法将一个字符串分割为子字符串,然后将结果作为字符串...
  • 主要为大家详细介绍了Java常用字符串工具类,字符串的智能截取,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 70,228
精华内容 28,091
关键字:

java字符串的拆分

java 订阅