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

Javaで正規表現を使用して各単語の最初の文字を取得するにはどうすればよいですか?


メタ文字「\ b 」は単語の境界に一致し、[a-zA-Z]は英語のアルファベットの1文字に一致します(どちらの場合も)。つまり、 \ \ b [a-zA-Z]という表現です。 どちらの場合も、すべての単語の境界の後に、英語のアルファベットの1文字に一致します。

したがって、各単語の最初の文字を取得するには-

  • Patternクラスのcompile()メソッドの上記の式をコンパイルします。

  • Patternクラスのmatcher()メソッドへのパラメーターとして、必要な入力文字列をバイパスするMatcherオブジェクトを取得します。

  • 最後に、一致するたびに、group()メソッドを呼び出して一致する文字を取得します。

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class FirstLetterExample {
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter sample text: ");
      String data = sc.nextLine();
      String regex = "\\b[a-zA-Z]";
      //Creating a pattern object
      Pattern pattern = Pattern.compile(regex);
      //Creating a Matcher object
      Matcher matcher = pattern.matcher(data);
      System.out.println("First letter of each word from the given string: ");
      while(matcher.find()) {
         System.out.print(matcher.group()+" ");
      }
   }
}

出力

Enter sample text:
National Intelligence Agency Research & Analysis Wing
First letter of each word from the given string:
N I A R A W

  1. 正規表現を使用してPythonで単語を照合するにはどうすればよいですか?

    次のコードは、指定された文字列の「meeting」という単語と一致します。 前向きな先読みアサーションと後ろ向きアサーションを使用して、囲んでいる文字を尊重しますが、一致には含めません。 例 import re s = """https://www.google.com/meeting_agenda_minutes.html""" result = re.findall(r'(?<=[\W_])meeting(?=[\W_])', s) print result 出力 ['meeting']

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

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