Rumah > Soal Jawab > teks badan
Sebagai contoh, terdapat beberapa rentetan seperti ini:
H3C18,
H301C108
Cara mengasingkan kepada
H3 dan C18,
H301
黄舟2017-05-17 10:01:34
Ekspresi biasa nampaknya memenuhi keperluan
import java.util.LinkedList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
public static void main(String[] args) {
System.out.println(tokens("H3C18"));
System.out.println(tokens("H301C108"));
}
private static final Pattern PATTERN = Pattern.compile("[a-zA-Z]\d+");
public static List<String> tokens(String text) {
List<String> result = new LinkedList<>();
Matcher matcher = PATTERN.matcher(text);
while (matcher.find()) {
result.add(matcher.group(0));
}
return result;
}
}
Output
[H3, C18]
[H301, C108]
仅有的幸福2017-05-17 10:01:34
Peraturannya ialah "C", buat kecoh saja, tak susah pun, fikirkan sahaja
PHP中文网2017-05-17 10:01:34
Tolong jangan jadi douchebag masalah sebegini semua masalah yang boleh diselesaikan dengan menyemak API
Berfikir lebih dan membuat lebih banyak kemajuan
Ideanya adalah untuk memotong rentetan dan mencari indeks yang sepadan dengan watak.