回答編集履歴
5
補足
answer
CHANGED
@@ -2,11 +2,14 @@
|
|
2
2
|
|
3
3
|
はいOKです、[オンライン正規表現確認サイト](https://regex101.com/)で確認してみてくださいな。
|
4
4
|
|
5
|
+
---
|
6
|
+
以下からはコード添削です。
|
5
|
-
1,条件
|
7
|
+
1,if文の条件が**11文字未満**ですが、エラー文言が**10文字以上**です。エラーの文言と実際の処理内容が一致していません。(コードは10文字をエラーとして取り扱っています。)
|
6
|
-
|
7
8
|
以上/以下は解釈誤りを起こしやすい言葉なので、「以上及びそれを含む」とするか意識して取り扱ってくださいな。
|
9
|
+
```Java
|
8
|
-
|
10
|
+
}else if(telNumber.length() < 11 || telNumber.length() > 13) {
|
9
|
-
|
11
|
+
result = "【電話番号は10文字以上13文字以下で入力してください】";
|
12
|
+
```
|
10
13
|
|
11
14
|
2,エラーチェックの場合、即時リターンをするとif文が短くなります。
|
12
15
|
```Java
|
4
追記
answer
CHANGED
@@ -21,7 +21,7 @@
|
|
21
21
|
public class A126169 {
|
22
22
|
|
23
23
|
public static void main(String[] args) {
|
24
|
-
System.out.println(A126169.telNumberChk("
|
24
|
+
System.out.println(A126169.telNumberChk("123456789"));
|
25
25
|
System.out.println(A126169.telNumberChk("AAAAAAAAAAA"));
|
26
26
|
}
|
27
27
|
|
@@ -30,9 +30,9 @@
|
|
30
30
|
if (telNumber.equals("")) {
|
31
31
|
return "【電話番号を入力してください】";
|
32
32
|
}
|
33
|
-
|
33
|
+
if (telNumber.length() < 10 || telNumber.length() > 13) {
|
34
|
-
|
34
|
+
return "【電話番号は10文字以上14文字未満で入力してください】";
|
35
|
-
|
35
|
+
}
|
36
36
|
if (!telNumber.matches("^[0-9]+$")) {
|
37
37
|
return "【電話番号は半角数字で、正しいものを入力してください】";
|
38
38
|
}
|
3
追記
answer
CHANGED
@@ -30,8 +30,8 @@
|
|
30
30
|
if (telNumber.equals("")) {
|
31
31
|
return "【電話番号を入力してください】";
|
32
32
|
}
|
33
|
-
if (telNumber.length() <
|
33
|
+
if (telNumber.length() < 10 || telNumber.length() > 13) {
|
34
|
-
return "【電話番号は
|
34
|
+
return "【電話番号は10文字以上14文字未満で入力してください】";
|
35
35
|
}
|
36
36
|
if (!telNumber.matches("^[0-9]+$")) {
|
37
37
|
return "【電話番号は半角数字で、正しいものを入力してください】";
|
2
変更!
answer
CHANGED
@@ -1,40 +1,42 @@
|
|
1
|
-
**途中で投稿されてしまいました。。編集中です。**
|
2
|
-
|
3
1
|
> ("^[0-9]+$")
|
4
2
|
|
5
3
|
はいOKです、[オンライン正規表現確認サイト](https://regex101.com/)で確認してみてくださいな。
|
6
4
|
|
7
|
-
1,条件判断と表示
|
5
|
+
1,条件判断(**11文字未満はエラー**)とエラー表示の文言が一致していないです。
|
8
|
-
以上/以下は解釈誤りを起こしやすい言葉なので、「以上及びそれを含む」とするか、未満と超えるを使ってくださいな。
|
9
|
-
> }else if(telNumber.length() < 11 || telNumber.length() > 13) {
|
10
|
-
> result = "【電話番号は10文字以上13文字以下で入力してください】";
|
11
6
|
|
7
|
+
以上/以下は解釈誤りを起こしやすい言葉なので、「以上及びそれを含む」とするか意識して取り扱ってくださいな。
|
8
|
+
>}else if(telNumber.length() < 11 || telNumber.length() > 13) {
|
9
|
+
> result = "【電話番号は10文字以上13文字以下で入力してください】";
|
10
|
+
|
12
11
|
2,エラーチェックの場合、即時リターンをするとif文が短くなります。
|
13
12
|
```Java
|
14
13
|
if(telNumber.equals("")) {
|
15
14
|
return "【電話番号を入力してください】";
|
16
15
|
}
|
17
|
-
|
18
|
-
v
|
19
16
|
```
|
20
|
-
String result = "TRUE";
|
17
|
+
`String result = "TRUE";`としなくても戻り値のStringのLengthで判断する形にもできるかと。
|
21
18
|
|
19
|
+
サンプルコードです。ご参考まで。
|
20
|
+
```Java
|
21
|
+
public class A126169 {
|
22
22
|
|
23
|
+
public static void main(String[] args) {
|
24
|
+
System.out.println(A126169.telNumberChk("0123456789"));
|
25
|
+
System.out.println(A126169.telNumberChk("AAAAAAAAAAA"));
|
26
|
+
}
|
23
27
|
|
24
|
-
|
28
|
+
public static String telNumberChk(String telNumber) {
|
25
|
-
```
|
26
29
|
|
27
|
-
|
28
|
-
public static String telNumberChk(String telNumber) {
|
29
|
-
String result = "TRUE";
|
30
|
-
|
31
|
-
|
30
|
+
if (telNumber.equals("")) {
|
32
|
-
|
31
|
+
return "【電話番号を入力してください】";
|
33
|
-
}else if(telNumber.length() < 11 || telNumber.length() > 13) {
|
34
|
-
result = "【電話番号は10文字以上13文字以下で入力してください】";
|
35
|
-
}else if(!telNumber.matches("^[0-9\-]+$")) {
|
36
|
-
result = "【電話番号は半角数字で、正しいものを入力してください】";
|
37
|
-
|
32
|
+
}
|
33
|
+
if (telNumber.length() < 11 || telNumber.length() > 13) {
|
38
|
-
|
34
|
+
return "【電話番号は11桁以上14桁未満で入力してください】";
|
39
|
-
|
35
|
+
}
|
36
|
+
if (!telNumber.matches("^[0-9]+$")) {
|
37
|
+
return "【電話番号は半角数字で、正しいものを入力してください】";
|
38
|
+
}
|
39
|
+
return "";
|
40
|
+
}
|
41
|
+
}
|
40
42
|
```
|
1
追記
answer
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
**途中で投稿されてしまいました。。編集中です。**
|
2
|
+
|
1
3
|
> ("^[0-9]+$")
|
2
4
|
|
3
5
|
はいOKです、[オンライン正規表現確認サイト](https://regex101.com/)で確認してみてくださいな。
|