Java
 Computer >> コンピューター >  >> プログラミング >> Java

JavaマッチャースレッドはJavaで安全ですか?


正規表現は、パターンに保持された特殊な構文を使用して、他の文字列または文字列のセットを照合または検索するのに役立つ特殊な文字シーケンスです。これらは、テキストやデータの検索、編集、または操作に使用できます。 Javaは、正規表現とのパターンマッチングのためのjava.util.regexパッケージを提供します。

マッチャークラス

Matcherオブジェクトは、パターンを解釈し、入力文字列に対して一致操作を実行するエンジンです。 Patternクラスと同様に、Matcherはパブリックコンストラクターを定義しません。 matcher()を呼び出すことにより、Matcherオブジェクトを取得します。 Patternオブジェクトのメソッド。

このクラスのインスタンスは、複数の同時スレッドでの使用には安全ではありません。

次のJavaプログラムは、ユーザーから5つの文字列を受け取り、数字で始まる文字列を出力します。

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StartingwithDigit {
   public static void main( String args[] ) {
      String regex = "^[0-9].*$";
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter 5 input strings: ");
      String input[] = new String[5];
      for (int i=0; i<5; i++) {
         input[i] = sc.nextLine();
      }
      //Creating a Pattern object
      Pattern p = Pattern.compile(regex);
      System.out.println("Strings starting with digits: ");
      for(int i=0; i<5;i++) {
         //Creating a Matcher object
         Matcher m = p.matcher(input[i]);  
         if(m.matches()) {
            System.out.println(m.group());
         }
      }
   }
}

出力

Enter 5 input strings:
sample string 1
sample string 2
11 sample string 3
22 sample string 4
43534 56353 636
Strings starting with digits:
11 sample string 3
22 sample string 4
43534 56353 636

  1. Javaで正規表現を使用して文字列からHTMLタグを抽出するにはどうすればよいですか?

    javaのjava.util.regexパッケージは、文字シーケンスの特定のパターンを見つけるためのさまざまなクラスを提供します。 パターン このパッケージのクラスは、正規表現のコンパイル済み表現です。正規表現を文字列と照合するために、このクラスは2つのメソッド、つまり-を提供します。 compile() −このメソッドは、正規表現を表す文字列を受け入れ、Patternクラスのオブジェクトを返します。 matcher() −このメソッドは文字列値を受け入れ、指定された文字列を現在のパターンオブジェクトによって表されるパターンに一致させるマッチャーオブジェクトを作成します。

  2. Java正規表現を使用して文字列から数値を抽出する

    以下は、Javaで正規表現を使用して文字列から数値を抽出する方法を示す例です。 文字列を解析してそこから情報を抽出できることは、すべてのテスターが持つべき重要なスキルです。これは、APIをテストするときに特に役立ち、JSONまたはXML応答を解析する必要があります。 次のJava正規表現の例は、文字列から数字または数字を抽出することに焦点を当てています。 文字列からすべての数値を抽出 import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExamples { public