正規表現を智能生成・解説し、様々な一般的なパターンマッチングをサポート
テキスト指示を数式に変換するか、数式の説明を取得します。
AIと会話してオンラインでExcelを編集します
テキスト指示をSQLクエリに変換します。
タスクを自動化し、Microsoft Excel内でカスタムソリューションを作成するためのExcel VBAコードを生成します。
Excelファイルをアップロードし、AIを使用して美しいチャートを生成します。
テキストを美しいマインドマップに変換します。簡単に編集・カスタマイズできます。
AIを使用して正規表現を智能生成・解説し、様々なテキストパターンマッチングとデータ検証をサポートします。
テキストの説明から美しい画像を生成するAIを使用します。無料です!
Java 正規表現(Regex)は、テキスト処理のための強力なツールであり、文字列のマッチング、検証、置換などに広く使用されています。この記事では、最も実用的なJava正規表現チュートリアルを、詳細なコード例と共に提供し、Java Regexスキルを習得し、様々な開発シナリオに簡単に対処できるよう支援します。
表現 | 説明 |
---|---|
. |
改行文字以外の任意の文字にマッチ |
^ |
入力文字列の開始位置にマッチ |
$ |
入力文字列の終了位置にマッチ |
* |
直前の要素に 0 回以上マッチ |
+ |
直前の要素に 1 回以上マッチ |
? |
直前の要素に 0 回または 1 回マッチ |
[] |
括弧内の任意の文字にマッチ |
[^^] |
括弧内にない任意の文字にマッチ |
{n} |
ちょうど n 回マッチ |
{n,} |
少なくとも n 回マッチ |
{n,m} |
n 回から m 回の間でマッチ(含む) |
\d |
数字文字にマッチ、[0-9] と等価 |
\w |
単語文字(文字、数字、アンダースコア)にマッチ、[a-zA-Z_0-9] と等価 |
\s |
任意の空白文字にマッチ |
` | ` |
java.util.regex.Pattern
java.util.regex.Matcher
import java.util.regex.*;
public class RegexExample1 {
public static void main(String[] args) {
String pattern = "^[a-zA-Z0-9]{6,12}$";
String input = "abc12345";
Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(input);
if (m.matches()) {
System.out.println("マッチ成功");
} else {
System.out.println("マッチ失敗");
}
}
}
import java.util.regex.*;
public class RegexExample2 {
public static void main(String[] args) {
String text = "連絡先メールアドレス:[email protected], [email protected]";
String regex = "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(text);
while (m.find()) {
System.out.println("メールアドレスが見つかりました: " + m.group());
}
}
}
import java.util.regex.*;
public class RegexExample3 {
public static void main(String[] args) {
String input = "顧客電話番号:13812345678、予備番号:13987654321";
String regex = "1[3-9]\\d{9}";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(input);
String result = m.replaceAll("***機密保持***");
System.out.println(result);
}
}
public class RegexValidation {
public static void main(String[] args) {
String phone = "13812345678";
String email = "[email protected]";
String idCard = "110101199003077777";
System.out.println(phone.matches("^1[3-9]\\d{9}$")); // true
System.out.println(email.matches("^[\\w.-]+@[\\w.-]+\\.[a-zA-Z]{2,}$")); // true
System.out.println(idCard.matches("^\\d{17}[\\dXx]$")); // true
}
}
^1[3-9]\\d{9}$
^[\\w.-]+@[\\w.-]+\\.[a-zA-Z]{2,}$
^\\d{17}[\\dXx]$
^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,}$
^(\\d{1,3}\\.){3}\\d{1,3}$
^https?://[\\w.-]+(?:\\.[\\w\\.-]+)+[/#?]?.*$