PukiWiki/1.4/ちょっと便利に/フレーズ検索を可能に
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#topicpath
**概要 [#x5bac883]
単語検索で空白文字を含むフレーズ検索を可能にします。~
'' ' ''または'' " ''で括られた文字列はフレーズとして扱う...
**差分((1.4.5_1ベース((1.4.4or1.4.6_rcでもほぼ同じ場所の...
--- func.org.php Sun Feb 20 12:50:06 2005
+++ func.php Sat Jul 16 12:38:34 2005
@@ -171,6 +171,13 @@
return $retval;
}
+function split_search_word($word)
+{
+ $matches = array();
+ preg_match_all('/((["\'])(?:(?!\2).)+\2|[^\s]+)/', $wo...
+ return preg_replace('/^(["\'])(.+)\1$/', '$2', $matche...
+}
+
// 'Search' main function
function do_search($word, $type = 'AND', $non_format = ...
{
@@ -181,7 +188,7 @@
$retval = array();
$b_type = ($type == 'AND'); // AND:TRUE OR:FALSE
- $keys = get_search_words(preg_split('/\s+/', $word, -1...
+ $keys = get_search_words(split_search_word($word));
$_pages = get_existpages();
$pages = array();
--- html.org.php Wed Jan 26 13:26:38 2005
+++ html.php Sat Jul 16 12:37:00 2005
@@ -113,9 +113,7 @@
if ($search_word_color && isset($vars['word'])) {
$body = '<div class="small">' . $_msg_word . htmlspec...
'</div>' . $hr . "\n" . $body;
- $words = array_flip(array_splice(
- preg_split('/\s+/', $vars['word'], -1, PREG_SPLIT_NO...
- 0, 10));
+ $words = array_flip(array_splice(split_search_word($v...
$keys = array();
foreach ($words as $word=>$id) $keys[$word] = strlen(...
arsort($keys, SORT_NUMERIC);
**コメント [#n9aae2f2]
-有りそうで無かったみたいなので弄ってみました。文字列の分...
#comment
終了行:
#topicpath
**概要 [#x5bac883]
単語検索で空白文字を含むフレーズ検索を可能にします。~
'' ' ''または'' " ''で括られた文字列はフレーズとして扱う...
**差分((1.4.5_1ベース((1.4.4or1.4.6_rcでもほぼ同じ場所の...
--- func.org.php Sun Feb 20 12:50:06 2005
+++ func.php Sat Jul 16 12:38:34 2005
@@ -171,6 +171,13 @@
return $retval;
}
+function split_search_word($word)
+{
+ $matches = array();
+ preg_match_all('/((["\'])(?:(?!\2).)+\2|[^\s]+)/', $wo...
+ return preg_replace('/^(["\'])(.+)\1$/', '$2', $matche...
+}
+
// 'Search' main function
function do_search($word, $type = 'AND', $non_format = ...
{
@@ -181,7 +188,7 @@
$retval = array();
$b_type = ($type == 'AND'); // AND:TRUE OR:FALSE
- $keys = get_search_words(preg_split('/\s+/', $word, -1...
+ $keys = get_search_words(split_search_word($word));
$_pages = get_existpages();
$pages = array();
--- html.org.php Wed Jan 26 13:26:38 2005
+++ html.php Sat Jul 16 12:37:00 2005
@@ -113,9 +113,7 @@
if ($search_word_color && isset($vars['word'])) {
$body = '<div class="small">' . $_msg_word . htmlspec...
'</div>' . $hr . "\n" . $body;
- $words = array_flip(array_splice(
- preg_split('/\s+/', $vars['word'], -1, PREG_SPLIT_NO...
- 0, 10));
+ $words = array_flip(array_splice(split_search_word($v...
$keys = array();
foreach ($words as $word=>$id) $keys[$word] = strlen(...
arsort($keys, SORT_NUMERIC);
**コメント [#n9aae2f2]
-有りそうで無かったみたいなので弄ってみました。文字列の分...
#comment
ページ名: