質問編集履歴
4
KojiDoi様よりご指摘を受けて修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -23,6 +23,17 @@
|
|
23
23
|
// 結果をコンソールへ表示
|
24
24
|
console.log(result); // -> '残す残す' という文字列を得たい
|
25
25
|
```
|
26
|
+
|
27
|
+
↓KojiDoi様に「url」の連結がおかしいとご指摘頂き、以下に修正しました
|
28
|
+
```
|
29
|
+
// iframeのsrcがこのurlであるiframeのみを削除したい
|
30
|
+
var url = "http://example/abc";
|
31
|
+
// 削除を実行
|
32
|
+
var obj = new RegExp( `<iframe(.+)?\ssrc=("|')` + url + `("|')(.+)?>(.+)?</iframe>`, 'g');
|
33
|
+
var result = str.replace( obj, '' );
|
34
|
+
// 結果をコンソールへ表示
|
35
|
+
console.log(result); // -> '残す残す' という文字列を得たい
|
36
|
+
```
|
26
37
|
正規表現は次の意味を考えて書きました。
|
27
38
|
|
28
39
|
`<iframe(.+)?`
|
3
正規表現を修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -19,7 +19,7 @@
|
|
19
19
|
// iframeのsrcがこのurlであるiframeのみを削除したい
|
20
20
|
var url = "http://example/abc";
|
21
21
|
// 削除を実行
|
22
|
-
var result = str.replace(new RegExp(/<iframe(.+)?\ssrc="|' + url + "|'(.+)?>(.+)?</iframe>/g), '');
|
22
|
+
var result = str.replace(new RegExp(/<iframe(.+)?\ssrc=("|') + url + ("|')(.+)?>(.+)?</iframe>/g), '');
|
23
23
|
// 結果をコンソールへ表示
|
24
24
|
console.log(result); // -> '残す残す' という文字列を得たい
|
25
25
|
```
|
@@ -31,7 +31,7 @@
|
|
31
31
|
`\s`
|
32
32
|
src の手前には必ずスペースがある
|
33
33
|
|
34
|
-
`src="|' + url + "|'`
|
34
|
+
`src=("|') + url + ("|')`
|
35
35
|
src の値は指定の url で、ダブルクオートまたはシングルクオートで囲まれている
|
36
36
|
|
37
37
|
`(.+)?>`
|
2
`で囲む
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,23 +2,22 @@
|
|
2
2
|
|
3
3
|
まず以下`str`が与えられます。
|
4
4
|
```JavaScript
|
5
|
-
var str = '残す<iframe width="560" src="http://example/
|
5
|
+
var str = '残す<iframe width="560" src="http://example/abc" frameborder="0"></iframe>残す';
|
6
6
|
```
|
7
|
+
|
7
8
|
ここから、
|
8
9
|
|
9
|
-
<iframe src="指定URL"></iframe>
|
10
|
+
`<iframe src="指定URL"></iframe>`
|
10
|
-
|
11
11
|
を削除して
|
12
12
|
|
13
|
-
残す残す
|
13
|
+
`残す残す`
|
14
|
-
|
15
14
|
を得たいのですが、私の正規表現は何が間違っているでしょうか?
|
16
15
|
|
17
16
|
|
18
|
-
|
17
|
+
正規表現は次の通りです。
|
19
18
|
```javascript
|
20
19
|
// iframeのsrcがこのurlであるiframeのみを削除したい
|
21
|
-
var url = "http://example/
|
20
|
+
var url = "http://example/abc";
|
22
21
|
// 削除を実行
|
23
22
|
var result = str.replace(new RegExp(/<iframe(.+)?\ssrc="|' + url + "|'(.+)?>(.+)?</iframe>/g), '');
|
24
23
|
// 結果をコンソールへ表示
|
1
URLなどの調整
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,17 +1,16 @@
|
|
1
1
|
JavaScriptで文字列の置換に取り組んでいまして、正規表現の書き方でわからない部分があります。宜しくお願い致します。
|
2
2
|
|
3
3
|
まず以下`str`が与えられます。
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
4
|
+
```JavaScript
|
5
|
+
var str = '残す<iframe width="560" src="http://example/abcdefghijk" frameborder="0"></iframe>残す';
|
6
|
+
```
|
8
7
|
ここから、
|
9
8
|
|
10
9
|
<iframe src="指定URL"></iframe>
|
11
10
|
|
12
11
|
を削除して
|
13
12
|
|
14
|
-
|
13
|
+
残す残す
|
15
14
|
|
16
15
|
を得たいのですが、私の正規表現は何が間違っているでしょうか?
|
17
16
|
|
@@ -19,11 +18,11 @@
|
|
19
18
|
上記に対する正規表現が次の通りです。
|
20
19
|
```javascript
|
21
20
|
// iframeのsrcがこのurlであるiframeのみを削除したい
|
22
|
-
var url = "
|
21
|
+
var url = "http://example/abcdefghijk";
|
23
22
|
// 削除を実行
|
24
23
|
var result = str.replace(new RegExp(/<iframe(.+)?\ssrc="|' + url + "|'(.+)?>(.+)?</iframe>/g), '');
|
25
24
|
// 結果をコンソールへ表示
|
26
|
-
console.log(result); // -> '
|
25
|
+
console.log(result); // -> '残す残す' という文字列を得たい
|
27
26
|
```
|
28
27
|
正規表現は次の意味を考えて書きました。
|
29
28
|
|