我这里有一个文件是转储
T01
X064900Y049200
X065900
X066900
X067900
X068900
X069900
T02
X062900Y048200
Y049200
Y050200
Y053700
X063900
X064900
X065900
X046350
我想把它的内容拆分为T *“T *必须包括”使用
Java正则表达式
我在这里把文件内容读到string parts
然后String [] tools = parts.split("T\\d+");
但是它不起作用,使用的最佳正则表达方式是什么。
答案 0 :(得分:0)
在字母" T"处分开。换行符使第一行不被分割。
String[] tools=parts.split("\n(?=T)");
答案 1 :(得分:0)
即使没有split
方法,也可以使用捕获组来完成:
这是正则表达式:((?<=T)[^T]*)
答案 2 :(得分:0)
这是你的解决方案。我假设你期望单独的字符串以字母“T&#39;”开头。
package com.sujit;
import java.util.regex.Pattern;
public class Testt {
public static void main(String[] args)
{
String txt="T01X064900Y049200X065900X066900X067900X068900X069900T02X062900Y048200Y049200Y050200Y053700X063900X064900X065900X046350";
Pattern ptn = Pattern.compile("T");
String[] parts = ptn.split(txt);
for(String p:parts){
if(!p.isEmpty()){
System.out.println("T"+p);
}
}
}
}
输出:
T01X064900Y049200X065900X066900X067900X068900X069900 T02X062900Y048200Y049200Y050200Y053700X063900X064900X065900X046350