Java 正規表現とメソッドを定義および使用する方法

PHPz
リリース: 2023-04-18 13:16:03
転載
1112 人が閲覧しました

1. 正規表現:

a.定義:

正規表現は文字列のパターンを定義します。

正規表現は、テキストの検索、編集、操作に使用できます。

正規表現は 1 つの言語に限定されませんが、言語ごとに微妙な違いがあります。

Java では、文字列は実際には単純な正規表現です。たとえば、Hello World 正規表現は「Hello World」文字列と一致します。

ava.util.regex パッケージには主に次の 3 つのクラスが含まれています:

1.パターン クラス: パターン オブジェクトは、正規表現のコンパイルされた表現です。 Pattern クラスにはパブリック コンストラクターがありません。

Pattern オブジェクトを作成するには、まずそのパブリック静的コンパイル済みメソッドを呼び出す必要があります。このメソッドは Pattern オブジェクトを返します。このメソッドは、最初のパラメータとして正規表現を受け入れます。

2.Matcher クラス: Matcher オブジェクトは、入力文字列を解釈して照合するエンジンです。 Pattern クラスと同様に、Matcher にはパブリック コンストラクターがありません。

Matcher オブジェクトを取得するには、Pattern オブジェクトの matcher メソッドを呼び出す必要があります。

3.PatternSyntaxException: PatternSyntaxException は、正規表現パターンの構文エラーを表す非必須の例外クラスです。

b. キャプチャグループ:

キャプチャグループとは、複数の文字を一つの単位として処理する方法で、括弧内の文字をグループ化して作成されます。

String line = "この注文は QT3000 に対して行われました! OK?"; //

を入力してください 文字列パターン = "(\\D*)(\\d )(.*)"; //3 つのキャプチャ グループ

() が 3 つあるので、最終的に 3 つのグループが形成されます。上記の正規表現によれば、結果は次のようになります。 この注文は QT

に対して行われました 3000

! わかりました?###### Matcher オブジェクトを使用している場合、group(0) が元の文字列 (文字列全体) になることに注意してください。

実際の開発では便宜上、PatternクラスやMatcherクラスを直接使用することはほとんどなく、Stringクラス配下のメソッドを使用します。 検証: ブール値一致(文字列正規表現)

分割: String[] Split(String regex)

置換: String replaceAll(String regex, String replace)

c. 文法:

他の言語では、\\ は次のことを意味します。正規表現に通常の (リテラル) バックスラッシュを挿入したいので、特別な意味を与えないでください。

Java では、\\ は次のことを意味します。正規表現のバックスラッシュを挿入したいので、その後の文字は特別な意味を持ちます。

したがって、他の言語 (Perl など) では、エスケープするには 1 つのバックスラッシュ \ で十分ですが、Java では、他の言語でエスケープとして解析されるために正規表現に 2 つのバックスラッシュが必要になるという意味になります。また、Java の正規表現では、他の言語では 2 つの \\ が 1 つの \ を表すことも簡単に理解できます。これが、1 桁を表す正規表現が、通常のバックスラッシュを表す \\d である理由です。はい、\\\\ です。

2.Java メソッド:

Java はオブジェクト指向言語であるため、関数はなくメソッドのみが存在しますが、一般に関数とメソッドはアプリケーションにおいて類似しています。

a.定義:

修飾子戻り値型メソッド名(パラメータ型パラメータ名)

{

...

メソッド本体

...

return 戻り値;

}

実際の例を見てみましょう。このメソッドは 2 つのパラメータの最大値を返します:

public static int max(int num1, int num2) {

int 結果;

if (num1 > num2)

結果 = num1;

それ以外###### 結果 = num2;

結果を返す;

}

基本的には関数と同じですが、JAVA はオブジェクトなので、どのメソッドがどのクラスにあるかに注意する必要があります。

b.Java の機能:

Java は C と同様に関数のオーバーロードをサポートしています。

Java は、同じ型の変数パラメータをメソッドに渡すことをサポートしています:

printMax(34, 3, 3, 2, 56.5);

printMax(new double[]{1, 2, 3});

以上がJava 正規表現とメソッドを定義および使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!