teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

追記

2021/12/10 12:27

投稿

miu_ras
miu_ras

スコア902

answer CHANGED
@@ -10,4 +10,15 @@
10
10
  }
11
11
  ```
12
12
 
13
+ >「全角か、半角カナ」が1つでもあったらfalse
14
+ なら、単に「アスキー文字を半角」ということですか?そうなら**isZenkaku**ではなく**isHankaku**が適切ですね。これでどうでしょう?
15
+
16
+ ```JavaScript
17
+ function isHankaku(str) {
13
- これがだめな場合、どの文字をどう判断したいがうまく行かないのか、具体的に文字を書いてください。
18
+ if (str.match(/^[\x01-\x7E]+$/)) {
19
+ return true;
20
+ } else {
21
+ return false;
22
+ }
23
+ }
24
+ ```

1

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

2021/12/10 12:27

投稿

miu_ras
miu_ras

スコア902

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