質問編集履歴

1

現状のpreg_match_allの取得結果を追記しました。

2016/02/01 09:45

投稿

ch2i
ch2i

スコア11

test CHANGED
File without changes
test CHANGED
@@ -10,18 +10,6 @@
10
10
 
11
11
 
12
12
 
13
- ↓この正規表現に、単語の頭に半角スペースが含まれている単語は対象外とする処理を追加したいです。
14
-
15
- preg_match_all("/([ァ-ヾ \n]+(([a-zA-Z ・ー]+))?)/u", $text);
16
-
17
-
18
-
19
- 否定先読み(?![\s])を入れたりしてみたのですがうまくいきませんでした。
20
-
21
-
22
-
23
- ex)
24
-
25
13
  【検索対象の文字列】
26
14
 
27
15
  「テストです。 テストです。テ ス トです。」
@@ -32,4 +20,8 @@
32
20
 
33
21
 
34
22
 
23
+ preg_match_all("/(?![\s][ァ-ヾ])+([ァ-ヾ \n]+(([a-zA-Z ・]+))?)/u", $text, $matches);
24
+
25
+ 上記で実行したところ、$matchesに「テスト」「 テスト」「テ ス ト」のすべてが取得できてしまいます。
26
+
35
- くお願いいたします。
27
+ 「 テスト」だけを検索対象から外すには、ほかにどのうな考慮が必要でょうか?