-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapp.php
More file actions
76 lines (60 loc) · 1.66 KB
/
Copy pathapp.php
File metadata and controls
76 lines (60 loc) · 1.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php
require "../RevinLibrary/Revin.php";
/*************************************
* 設定
*************************************/
// 検索したいワード
define('SEARCH_WORD', 'Revin');
// リツイートを除外
define('EXCLUDE_RETWEETS', true);
// 禁止ワードおよび除外ユーザを記述したリストのファイル
define('FILE_LIST', './list.txt');
// 結果を出力するファイル
define('FILE_OUTPUT', './output.txt');
/*************************************/
$queryArray = array();
$searchArray = array();
// リツイート除外
if(EXCLUDE_RETWEETS) $queryArray[] = 'exclude:retweets';
// リスト読む
$list = file_get_contents(FILE_LIST);
// 改行統一
$list = Revin::NormalizeLine($list);
// 分ける
$listArray = explode("\n", $list);
foreach($listArray as $var){
// 空行もしくはコメント行は飛ばす
if($var == '' || preg_match('@^//@', $var)){
continue;
}
// 除外ユーザ
elseif(preg_match('/^@(.*)$/', $var, $matches)){
$word = $matches[1];
if(!empty($word)){
$queryArray[] = '-from:'.$word;
$queryArray[] = '-to:'.$word;
$queryArray[] = '-@'.$word;
}
}
// 禁止ワード
elseif(preg_match('/^-(.*)$/', $var, $matches)){
$word = $matches[1];
if(!empty($word)){
$queryArray[] = '-'.$word;
}
}
// 検索ワード
else{
$searchArray[] = $var;
}
}
// 検索ワード統合
if(count($searchArray) == 1){
$queryArray[] = $searchArray[0];
}
elseif(count($searchArray) > 1){
$queryArray[] = '('.implode(' OR ', $searchArray).')';
}
// 書き出し
file_put_contents(FILE_OUTPUT, implode(" ", $queryArray));
?>