java以换行拆分字符串,java string换行

发布时间:2022-11-20

本文目录一览:

  1. java读取文件时,空格或换行是各个字符串的分割符,怎么才能将字符串一一读出?
  2. Java如何将字符串分割?
  3. 如何按行来分割Java字符串
  4. java split()根据换行符号截取字符串为数组
  5. java 怎么通过换行符截取字符串,

java读取文件时,空格或换行是各个字符串的分割符,怎么才能将字符串一一读出?

  1. 按行读,每个换行符是一行
  2. 读出行后按空格拆分字符串下面提供一个工具方法:
public static String[] split(String str, char separatorChar) {
    if (str == null) {
        return null;
    }
    int length = str.length();
    if (length == 0) {
        return ArrayUtil.EMPTY_STRING_ARRAY;
    }
    List list = new ArrayList();
    int i = 0;
    int start = 0;
    boolean match = false;
    while (i < length) {
        if (str.charAt(i) == separatorChar) {
            if (match) {
                list.add(str.substring(start, i));
                match = false;
            }
            start = ++i;
            continue;
        }
        match = true;
        i++;
    }
    if (match) {
        list.add(str.substring(start, i));
    }
    return (String[]) list.toArray(new String[list.size()]);
}

Java如何将字符串分割?

split

public String[] split(String regex)

根据给定正则表达式的匹配拆分此字符串。 该方法的作用就像是使用给定的表达式和限制参数 0 来调用两参数 split 方法。因此,所得数组中不包括结尾空字符串。 例如,字符串 "boo:and:foo" 使用这些表达式可生成以下结果:

Regex 结果
: { "boo", "and", "foo" }
o { "b", "", ":and:f" }
参数
  • regex - 定界正则表达式 返回: 字符串数组,它是根据给定正则表达式的匹配拆分此字符串确定的 抛出
  • PatternSyntaxException - 如果正则表达式的语法无效 从以下版本开始: 1.4 另请参见: 转自java api 另JavaMe没有split方法需要自己实现

如何按行来分割Java字符串

java拆分字符串使用string类的spilt方法,针对某个分隔符来分割一个字符串,示例如下:

public class StringSplit {
    public static void main(String[] args) {
        String sourceStr = "1,2,3,4,5";//一个字符串
        String[] sourceStrArray = sourceStr.split(",");//分割出来的字符数组
        for (int i = 0; i < sourceStrArray.length; i++) {
            System.out.println(sourceStrArray[i]);
        }
        // 最多分割出3个字符串
        int maxSplit = 3;
        sourceStrArray = sourceStr.split(",", maxSplit);
        for (int i = 0; i < sourceStrArray.length; i++) {
            System.out.println(sourceStrArray[i]);
        }
    }
}

输出结果为:

2
4
1
3,4,5

java split()根据换行符号截取字符串为数组

class Main {
    static public void main(String[] str) {
        String s = "1234567\n890\n110A";
        String[] array = s.split("([\t\n]+)");
        for (int i = 0; i < array.length; i++) {
            System.out.println(array[i]);
        }
    }
}

字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“a”,s[9]="j",而字符串的零位正是它的长度。

函数应用

  1. 连接运算 concat(s1,s2,s3…sn) 相当于 s1+s2+s3+…+sn. 例:concat('11','aa')='11aa';
  2. 求子串Copy(s,I,I) 从字符串s中截取第I个字符开始后的长度为l的子串。 例: copy('abdag',2,3)='bda'
  3. 删除子串。过程 Delete(s,I,l) 从字符串s中删除第I个字符开始后的长度为l的子串。 例:s:='abcde';delete(s,2,3);结果s:='ae' 以上内容参考:百度百科-字符串

java 怎么通过换行符截取字符串,

使用 JTextArea的话,麻烦一点可以使用 getLineCount() 获得行数。getLineStartOffset(int line)getLineEndOffset(int line) 获得行首尾位置,然后使用 substring 获得各行内容。