
No.3ベストアンサー
- 回答日時:
カンマなしの整数は \d+
カンマ付き(3桁区切り)は、\d{1,3}(,\d{3})*
です。
以下、実装例です。
import java.util.regex.*;
public class sample {
public static void main(String[] args) {
//カンマなし整数の判定
boolean r1 = Pattern.matches("^\\d+$", "a999");
boolean r2 = Pattern.matches("^\\d+$", "8999");
System.out.println("r1=" + r1);
System.out.println("r2=" + r2);
//カンマつき整数の判定
r1 = Pattern.matches("^\\d{1,3}(,\\d{3})*$", "a999");
r2 = Pattern.matches("^\\d{1,3}(,\\d{3})*$", "8,999");
boolean r3 = Pattern.matches("^\\d{1,3}(,\\d{3})*$", "128,999");
boolean r4 = Pattern.matches("^\\d{1,3}(,\\d{3})*$", "8,9,99");
boolean r5 = Pattern.matches("^\\d{1,3}(,\\d{3})*$", "89");
System.out.println("r1=" + r1);
System.out.println("r2=" + r2);
System.out.println("r3=" + r3);
System.out.println("r4=" + r4);
System.out.println("r5=" + r5);
//両方を一度に判定
r1 = Pattern.matches("^(\\d{1,3}(,\\d{3})*)|(\\d+)$", "a999");
r2 = Pattern.matches("^(\\d{1,3}(,\\d{3})*)|(\\d+)$", "8999");
r3 = Pattern.matches("^(\\d{1,3}(,\\d{3})*)|(\\d+)$", "128,999");
r4 = Pattern.matches("^(\\d{1,3}(,\\d{3})*)|(\\d+)$", "8,9,99");
System.out.println("r1=" + r1);
System.out.println("r2=" + r2);
System.out.println("r3=" + r3);
System.out.println("r4=" + r4);
}
}
実行結果
r1=false
r2=true
r1=false
r2=true
r3=true
r4=false
r5=true
r1=false
r2=true
r3=true
r4=false
trueがマッチ、falseがアンマッチです。
この回答へのお礼
お礼日時:2022/05/21 12:59
ご丁寧にありがとうございます。
無事コンパイルできました。
これを機に正規表現をきちんと勉強したいと思います。本当にありがとうございました…!
No.4
- 回答日時:
No.1
- 回答日時:
回答できる保証はありませんが、
正規表現は言語(又はツール等)によって、方言があります。
あなたが対象としている正規表現の言語を明確にすると、正確な回答が期待できます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JSPファイルで生じるエラーをど...
-
Pure Javaとは?
-
vba クリップボードクリアにつ...
-
CrystalReportsのバージョン確...
-
超恥愚問ですが、CとC++の間に...
-
gitでバージョン指定してダウン...
-
EclipseでJavaコンパイラのバー...
-
IISワーカープロセスが原因でCP...
-
visual stadio 参照問題
-
AccessとVBの違いについて
-
プログラミング言語について
-
VC6.0 と Studio2008の違い
-
Java環境の下準備で困っています。
-
MSCOMCTL.OCXのアップデートの方法
-
バージョン番号とリリース番号...
-
Tomcatのweb.xmlの設定について
-
Javaセキュリティによってブロ...
-
バージョンの記載及び管理の仕方
-
オブジェクト指向の利点と欠点
-
JSFで、マネージビーンに画面の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JSPファイルで生じるエラーをど...
-
PythonやJavaScriptのように実...
-
javaでの#if 0 #endif文
-
正規表現について質問です。 カ...
-
javaのジェネリックスでTとEの...
-
データベースの形式を認識でき...
-
Pure Javaとは?
-
ラダーとjavascriptを勉強した...
-
VScodeのターミナルの文字化け...
-
オブジェクト指向プログラミン...
-
while文を使ってのアプリケーシ...
-
javaとJavaScriptの違いは なん...
-
javaの将来性について教えてく...
-
Java言語は・・
-
!と~について
-
Javascriptで出来ること
-
サーブレットとPHPの違い
-
javaとC#のStringの違い
-
JavaスレッドとC言語のselect( )
-
javaに使用料金
おすすめ情報
ありがとうございます!
java se8です!
何度も申し訳ありません。
3桁ごとにカンマで区切られた整数字でした…。
また、正規表現について色々と調べたのですが、いまいち理解できず、自分で正規表現を考えるにあたって、どのように組み立てたら良いのかなど、なにか、アドバイスを頂けませんでしょうか。