最初の数字シーケンスの終わりの後にすべての文字を削除したかったのです。特定のシーケンスの後にすべての文字を削除します
編集:(曖昧さのため申し訳ありませんが)
- 文字列がまたは文字で起動しない場合がありますが、場合には、それは文字が保存されるべき 開始します。
数字の最初のシーケンスの後、すべてを削除する必要があります。
QWEE1232RTY - > QWE1232
123RTY - > 123
12342 - > 12342
str.replaceAll("[^A-Z][^0-9]+","");
これは動作するはずですが、それは予想外の出力を与え、繰り返し "2" を印刷していません。
My ideone code for the attempt and it's respective outputs
import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
String str = "BCTC27452ASDFCCC";
System.out.println(str.replaceAll("[^A-Z0-9]",""));
// BCTC27452ASDFCCC
System.out.println(str.replaceAll("[^A-Z0-9]$",""));
// BCTC27452ASDFCCC
System.out.println(str.replaceAll("[^A-Z][^0-9]",""));
// BCTC2745SDFCCC
System.out.println(str.replaceAll("[^A-Z][^0-9]+",""));
// Closest Output - "BCTC2745" (why 2nd "2" not printed)
System.out.println(str.replaceAll("[^A-Z][^0-9]*",""));
// BCTC
System.out.println(str.replaceAll("[^A-Z][^0-9+]",""));
// BCTC2745SDFCCC
System.out.println(str.replaceAll("[^A-Z][^0-9*]",""));
// BCTC2745SDFCCC
System.out.println("Expected Output: BTC27452");
}
}
['^ [AZ] {4} [0-9] {5}']を抽出してみませんか?(https://regex101.com/r/aE5cN9/2) – Tushar
なぜ '2'ですか?削除?ルールを明確にすることはできますか? –
@Tushar文字の数は固定されていません。 – sian