回答編集履歴

7

全角があいた

2021/11/19 23:18

投稿

FKM
FKM

スコア3647

test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
  ```php
14
14
 
15
- $pattern = '<img (.+\s*)?class="((.+\s)*a(\s.+)*)"(.+\s*)?/>';
15
+ $pattern = '<img\s+(.+\s*)?class="((.+\s)*a(\s.+)*)"(.+\s*)?/>';
16
16
 
17
17
  ```
18
18
 

6

空白があいてた

2021/11/19 23:18

投稿

FKM
FKM

スコア3647

test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
  ```php
14
14
 
15
- $pattern = '<img (.+\s*)? class="((.+\s)*a(\s.+)*)" (.+\s*)?/>';
15
+ $pattern = '<img (.+\s*)?class="((.+\s)*a(\s.+)*)"(.+\s*)?/>';
16
16
 
17
17
  ```
18
18
 

5

体裁の修正

2021/11/19 10:03

投稿

FKM
FKM

スコア3647

test CHANGED
@@ -14,6 +14,8 @@
14
14
 
15
15
  $pattern = '<img (.+\s*)? class="((.+\s)*a(\s.+)*)" (.+\s*)?/>';
16
16
 
17
+ ```
18
+
17
19
 
18
20
 
19
21
  念の為、どこが消去されるかエディタで試されてみた方がいいです。

4

ごちゃごちゃになったので

2021/11/19 09:42

投稿

FKM
FKM

スコア3647

test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- aを含むクラス名の場合はどこかにaを含むようにして、間に空間(\s)を開けておきます
7
+ aを含むクラス名の場合はどこかにaを含むようにして、間に空間(\s)を開けておきます。何マス分あけてるかわからないので、念の為*演算子にしてます。
8
8
 
9
9
 
10
10
 
@@ -12,7 +12,7 @@
12
12
 
13
13
  ```php
14
14
 
15
- $pattern = '<img (.+)? class="((.+\s+)*a(.+\s*)*)" (.+)?/>';
15
+ $pattern = '<img (.+\s*)? class="((.+\s)*a(\s.+)*)" (.+\s*)?/>';
16
16
 
17
17
 
18
18
 

3

空間の分

2021/11/19 09:41

投稿

FKM
FKM

スコア3647

test CHANGED
@@ -1,6 +1,10 @@
1
1
  他のプロパティがあるかないかを*識別子(0回以上の繰り返し)で判別すれば大丈夫かと思います。
2
2
 
3
3
  これで値が何があろうが、同じクラス名を持ったimgタグだけ抽出できるかと。
4
+
5
+
6
+
7
+ aを含むクラス名の場合はどこかにaを含むようにして、間に空間(\s)を開けておきます
4
8
 
5
9
 
6
10
 
@@ -8,11 +12,7 @@
8
12
 
9
13
  ```php
10
14
 
11
- $content = '<img class="(.+)" src="figure.jpg" />';
12
-
13
- $pattern = '<img (.+)* class="(.+)" (.+)*/>';
15
+ $pattern = '<img (.+)? class="((.+\s+)*a(.+\s*)*)" (.+)?/>';
14
-
15
- ```
16
16
 
17
17
 
18
18
 

2

間もこれに

2021/11/19 09:36

投稿

FKM
FKM

スコア3647

test CHANGED
@@ -8,9 +8,9 @@
8
8
 
9
9
  ```php
10
10
 
11
- $content = '<img class="a" src="figure.jpg" />';
11
+ $content = '<img class="(.+)" src="figure.jpg" />';
12
12
 
13
- $pattern = <img (.+)* class="a" (.+)*/>;
13
+ $pattern = '<img (.+)* class="(.+)" (.+)*/>';
14
14
 
15
15
  ```
16
16
 

1

srcプロパティに限らない

2021/11/19 09:28

投稿

FKM
FKM

スコア3647

test CHANGED
@@ -1,4 +1,4 @@
1
- srcタグのプロパティがあるかないかを*識別子で判別すれば大丈夫かと思います。
1
+ のプロパティがあるかないかを*識別子(0回以上の繰り返し)で判別すれば大丈夫かと思います。
2
2
 
3
3
  これで値が何があろうが、同じクラス名を持ったimgタグだけ抽出できるかと。
4
4