回答編集履歴

2

追記

2021/12/10 12:27

投稿

miu_ras
miu_ras

スコア902

test CHANGED
@@ -22,4 +22,26 @@
22
22
 
23
23
 
24
24
 
25
+ >「全角か、半角カナ」が1つでもあったらfalse
26
+
27
+ なら、単に「アスキー文字を半角」ということですか?そうなら**isZenkaku**ではなく**isHankaku**が適切ですね。これでどうでしょう?
28
+
29
+
30
+
31
+ ```JavaScript
32
+
33
+ function isHankaku(str) {
34
+
25
- これがだめな場合、どの文字をどう判断したいがうまく行かないのか、具体的に文字を書いてください。
35
+ if (str.match(/^[\x01-\x7E]+$/)) {
36
+
37
+ return true;
38
+
39
+ } else {
40
+
41
+ return false;
42
+
43
+ }
44
+
45
+ }
46
+
47
+ ```

1

質問の前提が変わったので、回答も修正

2021/12/10 12:27

投稿

miu_ras
miu_ras

スコア902

test CHANGED
@@ -1,4 +1,4 @@
1
- 「アスキー文字と半角カタカナを半角、それ以外を全角」と判断したいなら、一応これでいいかと思います。
1
+ 「アスキー文字を半角、それ以外を全角」と判断したいなら、一応これでいいかと思います。
2
2
 
3
3
 
4
4
 
@@ -6,7 +6,7 @@
6
6
 
7
7
  function isZenkaku(str) {
8
8
 
9
- if (!str.match(/[\x01-\x7E\uFF65-\uFF9F]/)) {
9
+ if (!str.match(/[\x01-\x7E]/)) {
10
10
 
11
11
  return true;
12
12