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

回答編集履歴

2

インデントの修正

2017/08/27 10:35

投稿

退会済みユーザー
answer CHANGED
@@ -20,7 +20,7 @@
20
20
  var test;
21
21
  var sub = str.match(/xxxx|yyyy|zzzz|ffff|dddd/);
22
22
  // matchの場合、該当なしならばnullを返すため、変更
23
- if(sub !== null){test = '一致';}
23
+ if(sub !== null){test = '一致';}
24
24
  ```
25
25
 
26
26
  と書くと、期待通り動くと思います。

1

追記

2017/08/27 10:35

投稿

退会済みユーザー
answer CHANGED
@@ -23,4 +23,25 @@
23
23
  if(sub !== null){test = '一致';}
24
24
  ```
25
25
 
26
- と書くと、期待通り動くと思います。
26
+ と書くと、期待通り動くと思います。
27
+
28
+ ### 追記
29
+
30
+ 禁止文字がたくさんあるとき、上では対応するのが大変になるので、
31
+ そういうときにはindexOfを使ったほうがよいかもしれません。例えばこのような関数を書いてみました。
32
+
33
+ ```
34
+ /**
35
+  mailTextに、forbiddenWords中に指定された文字列が一つでもあればtrue,一つもなければfalseを返す
36
+ @param {string} mailText メール本文の文字列
37
+ @param {Array<string>} forbiddenWords 禁止文字の配列
38
+ **/
39
+ function isIncludedForbiddenWords(mailText,forbiddenWords){
40
+ return forbiddenWords.some(function(word){return (mailText.indexOf(word) !== -1);});
41
+ }
42
+ ```
43
+
44
+
45
+
46
+
47
+