hypweb.net
XOOPSマニア  最新情報のRSS(サイト全体)
[ 自宅サーバーWebRing |ID=54 前後5表示乱移動サイト一覧 ]

TOP » UsersWiki » calendar nao-pon/blog/2013.06
Archives
2003
1 2 3 4 5 6 7 8 9 10 11 12
2004
1 2 3 4 5 6 7 8 9 10 11 12
2005
1 2 3 4 5 6 7 8 9 10 11 12
2006
1 2 3 4 5 6 7 8 9 10 11 12
2007
1 2 3 4 5 6 7 8 9 10 11 12
2008
1 2 3 4 5 6 7 8 9 10 11 12
2009
1 2 3 4 5 6 7 8 9 10 11 12
2010
1 2 3 4 5 6 7 8 9 10 11 12
2011
1 2 3 4 5 6 7 8 9 10 11 12
2012
1 2 3 4 5 6 7 8 9 10 11 12
2013
1 2 3 4 5 6 7 8 9 10 11 12
2014
1 2 3 4 5 6 7 8 9 10 11 12
2015
1 2 3 4 5 6 7 8 9 10 11 12
2016
1 2 3 4 5 6 7 8 9 10 11 12
2017
1 2 3 4 5 6 7 8 9 10 11 12
2020
1 2 3 4 5 6 7 8 9 10 11 12
2021
1 2 3 4 5 6 7 8 9 10 11 12
2022
1 2 3 4 5 6 7 8 9 10 11 12
2023
1 2 3 4 5 6 7 8 9 10 11 12
<< 2013.6 >>
[nao-pon/blog]
           
3 5 6 7 8
10 11 12 13 14 15
16 17 18 19 20 21 22
23 25 26 28 29
30            
 
RSS of nao-pon/blog

HypCommonFunc 20130601 & hypconf 1.07 リリース anchor.png

HypCommonFunc を更新して、Ver. 20130601 としました。
hypconf を更新して Ver. 1.07 としました。

ダウンロードは、HypCommonFunc のページからどうぞ。
(最新版の xpWiki には同じものが含まれています。)

Page Top

主な更新内容 anchor.png

  • 5b7116b: update spamsites.dat
  • 060f134: update spamsites.dat
  • 8d8a951: update spamsites.dat (& clean up)
    • 古めのエントリーなどで、Web 上で到達できないものを除外して掃除した。
  • bbb67a6: update spamsites.dat
  • bc05fac: Auto-registration of "spamsites.conf.dat" from honey pod
    • Spam 罠用無効フィールド(Honey Pod) に入力された URL の情報を spamsites.conf.dat に、自動登録する機能を追加。
      hypconf の 「スパム防止設定」 タブに設定項目が追加されています。
  • 8829ca4: HypCommonFunc version 20130601 & hypconf version 1.07
  • 279841f: Show updated time of "spamsites.dat" on SPAM blocker panel

 
RSS of nao-pon/blog

HypCommonFunc 20130602 & hypconf 1.09 リリース anchor.png

HypCommonFunc を更新して、Ver. 20130602 としました。
hypconf を更新して Ver. 1.09 としました。

HypCommon の設定の「スパム防止設定」の「自動登録しない正規表現パターン(デリミタは含めない)」の項目で正しくは "(?:^|\.)(?:google|yahoo)\." であるべきが "[./](?:google|yahoo)\." となっていました。

この設定を確認し、冒頭が "[./]" になっている場合、その部分を "(?:^|\.)" に修正して保存をお願いします。
冒頭が "(?:^|\.)" になっていれば問題ありません。また、独自に設定された場合もそれが問題なければ OK です。

ダウンロードは、HypCommonFunc のページからどうぞ。
(最新版の xpWiki には同じものが含まれています。)

Page Top

主な更新内容 anchor.png

  • d51f962: update spamsites.dat
  • 8af24e7: fix link "gate.php?way=spamdatup" ("&" to "&amp;")
  • 5c89374: fix "spamsites.dat" view
    • システム上の spamsites.dat の確認表示で、uploads/hyp_common に最新データがまだない状態において使用される class/hyp_common/dat 側の spamsites.dat の情報を表示するようにした。
  • 1cbe496: hypconf version 1.08
  • 09986da: fix config:"post_spam_safe_url" default value
    • post_spam_safe_url の規定値が間違っていたため修正した。
      HypCommon の設定の「スパム防止設定」の「自動登録しない正規表現パターン(デリミタは含めない)」の項目で正しくは "(?:^|\.)(?:google|yahoo)\." であるべきが "[./](?:google|yahoo)\." となっていました。
      「スパム防止設定」 を保存している場合は、"(?:^|\.)(?:google|yahoo)\." となっていることを確認の上、再度保存してください。
      また、独自の値で設定された場合で、冒頭が "[./]" になっている場合は "(?:^|\.)" に修正してください。
  • e38a345: HypCommonFunc v.20130602 & hypconf v.1.09

 
RSS of nao-pon/blog

HypCommonFunc 20130604 リリース anchor.png

HypCommonFunc を更新して、Ver. 20130604 としました。

X-update をご利用の場合は hypconf を更新することで、HypCommonFunc も最新版になります。

ダウンロードは、HypCommonFunc のページからどうぞ。
(最新版の xpWiki には同じものが含まれています。)

Page Top

主な更新内容 anchor.png

  • a1db26c: update spamsites.dat
  • b48113a: "spamsites.conf.dat" is optimized at the time of preservation
    • 管理画面での "spamsites.conf.dat" の保存時に、システム上の spamsites.dat
      と重複するエントリを除外するようにした。
  • 56dd98b: fix b48113
    • b48113 で追加した機能の修正。
  • ca410fc: refix b48113
    • b48113 で追加した機能の再修正。
  • ba75d27: hypconf version 1.10
  • 8b5b21b: update spamsites.dat
  • 3d17e3e: update spamsites.dat
  • 845894f: [HypCommonFunc] fix URL_Check() check include "www." too
    • URL の接続可否チェックで、サードドメインのない URL の場合に "www." 付きも合わせてチェックするようにした。
  • 64b9012: [KtaiRender] support file-upload with au UP.browser 7.2+
    • au フィーチャー・フォン(ガラケー)のブラウザバージョン 7.2 以降でファイルアプロードが可能になったことに対応。
  • a192525: [HypCommonPreload] don't put "Editor switch btn" with class plain, none
    • BBcodeエディタ と Wikiエディタ の切り替えボタンが表示される場合に、テキストエリアの class 属性に
      "plain" 又は "none" が含まれる場合は、切り替えボタンを付与しないようにした。
  • a681137: HypCommonFunc version 20130604

 
RSS of nao-pon/blog

自宅サーバー Vine 6 の PHP を 5.3.26 にアップデート anchor.png

最近は、RPM を作成して、オレオレ apt リポジトリからアップデートをしています。

wget -O ~/rpm/SOURCES/php5/php-5.3.26.tar.bz2 http://jp2.php.net/get/php-5.3.26.tar.bz2/from/jp1.php.net/mirror
cd ~/rpm/SPECS/
vim php5_3-vl.spec
# (php5_3-vl.spec の Version: 5.3.25 -> Version: 5.3.26 に書き換え)
rpm -ba php5_3-vl.spec
cp -u ~/rpm/RPMS/x86_64/php5*5.3* ~/../virtual/hypweb/apt/RPMS.main
cp -u ~/rpm/SRPMS/php5*5.3* ~/../virtual/hypweb/apt/SRPMS.main
cp -u ~/rpm/RPMS/x86_64/php5*5.4* ~/../virtual/hypweb/apt/RPMS.seed
cp -u ~/rpm/SRPMS/php5*5.4* ~/../virtual/hypweb/apt/SRPMS.seed
genbasedir --flat ~/../virtual/hypweb/apt
wget -O ~/rpm/SOURCES/php5/php-5.4.19.tar.bz2 http://jp2.php.net/get/php-5.4.19.tar.bz2/from/jp1.php.net/mirror
cd ~/rpm/SPECS/
vim php5_4-vl.spec
# (php5_4-vl.spec の Version: 5.4.18 -> Version: 5.4.19 に書き換え)
rpm -ba php5_4-vl.spec
cp -u ~/rpm/RPMS/x86_64/php5*5.4* ~/../virtual/hypweb/apt/RPMS.seed
cp -u ~/rpm/SRPMS/php5*5.4* ~/../virtual/hypweb/apt/SRPMS.seed
genbasedir --flat ~/../virtual/hypweb/apt

 
RSS of nao-pon/blog

HypCommonFunc 20130609 リリース anchor.png

HypCommonFunc を更新して、Ver. 20130609 としました。

X-update をご利用の場合は hypconf を更新することで、HypCommonFunc も最新版になります。

ダウンロードは、HypCommonFunc のページからどうぞ。
(最新版の xpWiki には同じものが含まれています。)

Page Top

主な更新内容 anchor.png

  • c7175bd: replace CRLF to LF
  • f05a296: [HypCommonPreload] change delegate to "XoopsTpl.New"
    • change delegate from "Legacy_RenderSystem.SetupXoopsTpl" to
      "XoopsTpl.New"
  • 3a2be97: [HypCommon] fix const "HYP_COMMON_PRELOAD_CONF" value on HTTPS
    • HTTPS と HTTPS を同一アドレスでアクセスできるように mainfile.php で XOOPS_URL をセットしている場合に、
      定数 "HYP_COMMON_PRELOAD_CONF" の値が変わってしまい、 hypconf での設定が持ち回れない問題の修正。
  • b85f013: [HypCommonPreload] support "TEXTAREA class name 'xcode'"
    • テキストエリアのクラス名に "xcode" がある場合は、Wiki エディタを使用しないようにした。
  • 52a05d0: [Hyp_TextFilter] fix [/quote] problem
    • 引用の閉じタグ [/quote] が正しく処理されないことがある問題の修正。
  • b2e1c7a: HypCommonFunc version 20130608
  • 6cc06e6: [MobileTheme] add theme "ktai_smart_default"
    • スマートフォン向けとして、HypCommon の設定の携帯対応の「XOOPSテーマ(jqm)」のテーマとして指定できる
      "ktai_smart_default" を用意しました。

      XCL 2.2.2 以降では、このテーマのテーマ下テンプレートは、ktai_default を継承するため、
      携帯向けテンプレートをスマートフォンでも使い、一部のテンプレートのみスマートフォン向けにカスタマイズする場合、
      この ktai_smart_default の themes 以下にそのテンプレートを配置することで対応することができます。

  • 723a96d: HypCommonFunc version 20130609

 
RSS of nao-pon/blog

HypCommonFunc 20130624, hypconf 1.12 リリース anchor.png

HypCommonFunc を更新して、Ver. 20130624 としました。

X-update をご利用の場合は hypconf を更新することで、HypCommonFunc も最新版になります。

ダウンロードは、HypCommonFunc のページからどうぞ。
(最新版の xpWiki には同じものが含まれています。)

Page Top

主な更新内容 anchor.png

  • 89a122d: [preload] set def value of k_tai_conf['themeSets']['jqm'] only XCL2.2.2
    • k_tai_conf['themeSets']['jqm'] のデフォルト値 "ktai_smart_default" は、
      XCL 2.2.2 で採用された、テーマ下テンプレートの *_default のオーバーライド機能を利用しているため、
      デフォルト設定は XCL 2.2.2 のみ行なうようにした。
  • ea396f9: [preload] fix problem with Inquiry for XCL
    • Inquiry for XCL 利用時に、チケットエラーで問い合わせが送信できない問題のための修正。
      スパム避けのための spam*.dat を更新するための script タグによるサーバーリクエストでチケットを消費
      していたのをチケットを消費いない方法へ変更し、対応。
  • b9ad42c: HypComonFunc v.20130610 and hypconf v.1.11
  • 057ec12: Hyp_TextFilter change preg_match 'e' attr to preg_replace_callback
  • 0f2da26: update spamsites.dat
  • 9bea5ae: support mod_xsendfile (apache module) >= v1.0
  • 8ab26f5: change regex '\w' to '_0-9a-zA-Z'
  • 511ec5c: [hypconf] add new config "Wiki Helper (Admin Panel)"
    • HypCommon の設定の xpWikiレンダラー設定に 「Wiki ヘルパー(管理画面)」を追加。
      管理画面の Wiki ヘルパーはデフォルトで無効になりましたので、管理画面でも利用したい場合は、
      この設定で「はい」を選択してください。
  • 3272c5a: update spamsites.dat
  • c90cb5e: HypCommonFunc 20130624 & hypconf 1.12

 
RSS of nao-pon/blog

正規表現処理エンジン PCRE の パータン分析スイッチの有効性について anchor.png

イメージマネージャーを使用するにすると更新できなくなります - xpWiki - フォーラム という問題の原因として PCRE の S 修飾子が原因かも、という話が出ました。

今まで、特に確信がない正規表現パターンでも、なんとなく効くかもといった理由で、適当に付与していた S 修飾子なのですが、 :hammer: きちんと効くかどうか検証した上で、使用すべきだと痛感しましたので、簡単に検証してみました。

Page Top
テストスクリプト anchor.png

xpWiki レンダラーの BB-Code に対応する正規表現をすべて確認。

 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
$str = <<<EOD
(BB-Code を含んだ適当な文章 4,500字程度)
EOD;
$regs = array();
 
$regs[] = '/(?:\r\n|\r|\n)?\[code](?:\r\n|\r|\n)?(.*)(?:\r\n|\r|\n)?\[\/code\](?:\r\n|\r|\n)?/sU';
$regs[] = '/(?:\r\n|\r|\n)?\[code](?:\r\n|\r|\n)?(.*)(?:\r\n|\r|\n)?\[\/code\](?:\r\n|\r|\n)?/sUS';
 
$regs[] = '/\[email](.+?)\[\/email]/i';
$regs[] = '/\[email](.+?)\[\/email]/iS';
 
$regs[] = '/\[url=([\'"]?)((?:ht|f)tp[s]?:\/\/[!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\\1\](.+)\[\/url\]/sU';
$regs[] = '/\[url=([\'"]?)((?:ht|f)tp[s]?:\/\/[!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\\1\](.+)\[\/url\]/sUS';
 
$regs[] = '/\[url=([\'"]?)([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\\1\](.+)\[\/url\]/sU';
$regs[] = '/\[url=([\'"]?)([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\\1\](.+)\[\/url\]/sUS';
 
$regs[] = '/\[siteurl=([\'"]?)\/?([!~*\'();?:\@&=+\$,%#_0-9a-zA-Z.-][!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\\1\](.+)\[\/siteurl\]/sU';
$regs[] = '/\[siteurl=([\'"]?)\/?([!~*\'();?:\@&=+\$,%#_0-9a-zA-Z.-][!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\\1\](.+)\[\/siteurl\]/sUS';
 
$regs[] = '/(\[quote[^\]]*])(?:\r\n|\r|\n)(?![<>*|,#: \t+-])/';
$regs[] = '/(\[quote[^\]]*])(?:\r\n|\r|\n)(?![<>*|,#: \t+-])/S';
 
$regs[] = '/(?:\r\n|\r|\n)*\[\/quote\]/';
$regs[] = '/(?:\r\n|\r|\n)*\[\/quote\]/S';
 
$regs[] = '/\[img\s+align=([\'"]?)(left|center|right)\1(?:\s+title=([\'"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\7)?]([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/U';
$regs[] = '/\[img\s+align=([\'"]?)(left|center|right)\1(?:\s+title=([\'"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\7)?]([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/US';
 
$regs[] = '/\[img(?:\s+title=([\'"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\5)?]([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/U';
$regs[] = '/\[img(?:\s+title=([\'"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\5)?]([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/US';
 
$regs[] = '/\[img\s+align=([\'"]?)(left|center|right)\1(?:\s+title=([\'"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\7)?]([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/U';
$regs[] = '/\[img\s+align=([\'"]?)(left|center|right)\1(?:\s+title=([\'"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\7)?]([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/US';
 
$regs[] = '/\[img(?:\s+title=([\'"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\5)?]([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/U';
$regs[] = '/\[img(?:\s+title=([\'"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\5)?]([!~*\'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/US';
 
$regs[] = '/\[siteimg\s+align=([\'"]?)(left|center|right)\1(?:\s+title=([\'"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\7)?]\/?([!~*\'();?\@&=+\$,%#_0-9a-zA-Z.-][!~*\'();\/?\@&=+\$,%#_0-9a-zA-Z.-]+?)\[\/siteimg\]/U';
$regs[] = '/\[siteimg\s+align=([\'"]?)(left|center|right)\1(?:\s+title=([\'"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\7)?]\/?([!~*\'();?\@&=+\$,%#_0-9a-zA-Z.-][!~*\'();\/?\@&=+\$,%#_0-9a-zA-Z.-]+?)\[\/siteimg\]/US';
 
$regs[] = '/\[siteimg(?:\s+title=([\'"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\5)?]\/?([!~*\'();?\@&=+\$,%#_0-9a-zA-Z.-][!~*\'();\/?\@&=+\$,%#_0-9a-zA-Z.-]+?)\[\/siteimg\]/U';
$regs[] = '/\[siteimg(?:\s+title=([\'"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=([\'"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=([\'"]?)([\d]+?)\5)?]\/?([!~*\'();?\@&=+\$,%#_0-9a-zA-Z.-][!~*\'();\/?\@&=+\$,%#_0-9a-zA-Z.-]+?)\[\/siteimg\]/US';
 
$regs[] = '/\x01(?:\=([^\]]+))?\](?:\r\n|[\r\n])((?:(?>[^\x01\x02]+)|(?R))*)\x02(?:\r\n|[\r\n]|$)?/';
$regs[] = '/\x01(?:\=([^\]]+))?\](?:\r\n|[\r\n])((?:(?>[^\x01\x02]+)|(?R))*)\x02(?:\r\n|[\r\n]|$)?/S';
 
$_reg = 'test|hoge|fuga';
 
$regs[] = '/\[\/?(?:' . $_reg . ')(?:(?: |=)[^\]]+)?\]/';
$regs[] = '/\[\/?(?:' . $_reg . ')(?:(?: |=)[^\]]+)?\]/S';
 
$regs[] = '/\[(' . $_reg . ')(?:\b[^\]]+)?].+\[\/\\1\]/sU';
$regs[] = '/\[(' . $_reg . ')(?:\b[^\]]+)?].+\[\/\\1\]/sUS';
 
$n = 0;
foreach($regs as $reg) {
    $n++;
    set_time_limit(30);
    $start = microtime(true);
    for ($i=0; $i < 10000; $i++) {
        preg_match($reg, $str);
    }
    echo $reg;
    echo ' : '. (microtime(true) - $start) . '<br>';
    if ($n%2 === 0) echo str_repeat('-', 80).'<br>';
}

Page Top
実行結果 anchor.png
/(?:\r\n|\r|\n)?\[code](?:\r\n|\r|\n)?(.*)(?:\r\n|\r|\n)?\[\/code\](?:\r\n|\r|\n)?/sU : 5.1569399833679
/(?:\r\n|\r|\n)?\[code](?:\r\n|\r|\n)?(.*)(?:\r\n|\r|\n)?\[\/code\](?:\r\n|\r|\n)?/sUS : 0.37282490730286
--------------------------------------------------------------------------------
/\[email](.+?)\[\/email]/i : 0.24048900604248
/\[email](.+?)\[\/email]/iS : 0.24318504333496
--------------------------------------------------------------------------------
/\[url=(['"]?)((?:ht|f)tp[s]?:\/\/[!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\1\](.+)\[\/url\]/sU : 0.23091006278992
/\[url=(['"]?)((?:ht|f)tp[s]?:\/\/[!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\1\](.+)\[\/url\]/sUS : 0.23208713531494
--------------------------------------------------------------------------------
/\[url=(['"]?)([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\1\](.+)\[\/url\]/sU : 0.23122596740723
/\[url=(['"]?)([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\1\](.+)\[\/url\]/sUS : 0.23223900794983
--------------------------------------------------------------------------------
/\[siteurl=(['"]?)\/?([!~*'();?:\@&=+\$,%#_0-9a-zA-Z.-][!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\1\](.+)\[\/siteurl\]/sU : 0.31252813339233
/\[siteurl=(['"]?)\/?([!~*'();?:\@&=+\$,%#_0-9a-zA-Z.-][!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\1\](.+)\[\/siteurl\]/sUS : 0.33435487747192
--------------------------------------------------------------------------------
/(\[quote[^\]]*])(?:\r\n|\r|\n)(?![<>*|,#: \t+-])/ : 0.3490879535675
/(\[quote[^\]]*])(?:\r\n|\r|\n)(?![<>*|,#: \t+-])/S : 0.35570693016052
--------------------------------------------------------------------------------
/(?:\r\n|\r|\n)*\[\/quote\]/ : 3.4016590118408
/(?:\r\n|\r|\n)*\[\/quote\]/S : 0.36038398742676
--------------------------------------------------------------------------------
/\[img\s+align=(['"]?)(left|center|right)\1(?:\s+title=(['"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\7)?]([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/U : 0.31287097930908
/\[img\s+align=(['"]?)(left|center|right)\1(?:\s+title=(['"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\7)?]([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/US : 0.31461405754089
--------------------------------------------------------------------------------
/\[img(?:\s+title=(['"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\5)?]([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/U : 0.33726000785828
/\[img(?:\s+title=(['"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\5)?]([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/US : 0.42045998573303
--------------------------------------------------------------------------------
/\[img\s+align=(['"]?)(left|center|right)\1(?:\s+title=(['"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\7)?]([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/U : 0.31326389312744
/\[img\s+align=(['"]?)(left|center|right)\1(?:\s+title=(['"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\7)?]([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/US : 0.31384992599487
--------------------------------------------------------------------------------
/\[img(?:\s+title=(['"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\5)?]([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/U : 0.33749294281006
/\[img(?:\s+title=(['"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\5)?]([!~*'();\/?:\@&=+\$,%#_0-9a-zA-Z.-]+)\[\/img\]/US : 0.35765695571899
--------------------------------------------------------------------------------
/\[siteimg\s+align=(['"]?)(left|center|right)\1(?:\s+title=(['"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\7)?]\/?([!~*'();?\@&=+\$,%#_0-9a-zA-Z.-][!~*'();\/?\@&=+\$,%#_0-9a-zA-Z.-]+?)\[\/siteimg\]/U : 0.31132006645203
/\[siteimg\s+align=(['"]?)(left|center|right)\1(?:\s+title=(['"])?((?(3)[^]]*|[^\]\s]*))(?(3)\3))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\5)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\7)?]\/?([!~*'();?\@&=+\$,%#_0-9a-zA-Z.-][!~*'();\/?\@&=+\$,%#_0-9a-zA-Z.-]+?)\[\/siteimg\]/US : 0.31220507621765
--------------------------------------------------------------------------------
/\[siteimg(?:\s+title=(['"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\5)?]\/?([!~*'();?\@&=+\$,%#_0-9a-zA-Z.-][!~*'();\/?\@&=+\$,%#_0-9a-zA-Z.-]+?)\[\/siteimg\]/U : 0.3105890750885
/\[siteimg(?:\s+title=(['"])?((?(1)[^]]*|[^\]\s]*))(?(1)\1))?(?:\s+w(?:idth)?=(['"]?)([\d]+?)\3)?(?:\s+h(?:eight)?=(['"]?)([\d]+?)\5)?]\/?([!~*'();?\@&=+\$,%#_0-9a-zA-Z.-][!~*'();\/?\@&=+\$,%#_0-9a-zA-Z.-]+?)\[\/siteimg\]/US : 0.31125688552856
--------------------------------------------------------------------------------
/\x01(?:\=([^\]]+))?\](?:\r\n|[\r\n])((?:(?>[^\x01\x02]+)|(?R))*)\x02(?:\r\n|[\r\n]|$)?/ : 0.261470079422
/\x01(?:\=([^\]]+))?\](?:\r\n|[\r\n])((?:(?>[^\x01\x02]+)|(?R))*)\x02(?:\r\n|[\r\n]|$)?/S : 0.261470079422
--------------------------------------------------------------------------------
/\[\/?(?:test|hoge|fuga)(?:(?: |=)[^\]]+)?\]/ : 0.42223906517029
/\[\/?(?:test|hoge|fuga)(?:(?: |=)[^\]]+)?\]/S : 0.42319798469543
--------------------------------------------------------------------------------
/\[(test|hoge|fuga)(?:\b[^\]]+)?].+\[\/\1\]/sU : 0.38073801994324
/\[(test|hoge|fuga)(?:\b[^\]]+)?].+\[\/\1\]/sUS : 0.38188505172729
--------------------------------------------------------------------------------

ほとんどのパターンでまるで効果がありませんでした。

やはり、PHP マニュアル (PHP: 正規表現パターンに使用可能な修飾子 - Manual) にある

S
あるパターンを複数回使用する場合は、マッチングにかかる時間を 高速化することを目的として、パターンの分析に幾分か時間をかけても 良いでしょう。この修飾子を設定すると、追加のパターン分析が 行われます。現在、パターン分析は、最初の文字が単一ではなく、 かつ固定でないパターンに対してのみ有用です。


最初の文字が単一ではなく、 かつ固定でないパターンに対してのみ有用

この通りですね。 :shy:



トップ 印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
このページのTopへ
メインメニュー
ログイン

ユーザー名:


パスワード:





パスワード紛失  |新規登録
最近の更新
オンライン状況
311 人のユーザが現在オンラインです。 (1 人のユーザが UsersWiki を参照しています。)

登録ユーザ: 0
ゲスト: 311

もっと...
サイト情報